extractPackageName static method
Extract package name from build.gradle or build.gradle.kts
Implementation
static String? extractPackageName(File gradleFile) {
try {
final content = gradleFile.readAsStringSync();
// Try to find namespace (newer Gradle format)
final namespacePattern =
RegExp(r'namespace\s*[=:]\s*["' ']([^"' ']+)["' ']');
final namespaceMatch = namespacePattern.firstMatch(content);
if (namespaceMatch != null) {
return namespaceMatch.group(1);
}
// Try to find package in android block (older format)
// Using (?s) for dotAll and (?m) for multiline
final androidBlockPattern = RegExp(
r'(?s)android\s*\{[^}]*package\s*[=:]\s*["' ']([^"' ']+)["' ']',
);
final androidBlockMatch = androidBlockPattern.firstMatch(content);
if (androidBlockMatch != null) {
return androidBlockMatch.group(1);
}
return null;
} catch (e) {
return null;
}
}