findEntitlements static method
Find entitlements file for iOS/Flutter projects
Implementation
static File? findEntitlements(String projectPath, ProjectType projectType) {
if (projectType == ProjectType.flutter) {
final paths = [
path.join(projectPath, 'ios', 'Runner', 'Runner.entitlements'),
];
for (final p in paths) {
final file = File(p);
if (file.existsSync()) return file;
}
} else if (projectType == ProjectType.ios) {
// Search for .entitlements files
final dir = Directory(projectPath);
final files = dir.listSync(recursive: true).whereType<File>();
for (final file in files) {
if (file.path.endsWith('.entitlements')) {
return file;
}
}
} else if (projectType == ProjectType.reactNative) {
final iosDir = Directory(path.join(projectPath, 'ios'));
if (iosDir.existsSync()) {
for (final file in iosDir.listSync(recursive: true).whereType<File>()) {
if (file.path.endsWith('.entitlements') &&
!file.path.contains('/Pods/') &&
!file.path.contains('/build/')) {
return file;
}
}
}
}
return null;
}