getMinSdkVersion method
Gets the current minSdkVersion from the build.gradle file.
Implementation
int? getMinSdkVersion() {
final gradleFile = File(_buildGradlePath);
final gradleKtsFile = File(_buildGradleKtsPath);
File targetFile;
bool isKotlinDsl = false;
if (gradleFile.existsSync()) {
targetFile = gradleFile;
} else if (gradleKtsFile.existsSync()) {
targetFile = gradleKtsFile;
isKotlinDsl = true;
} else {
return null;
}
try {
final content = targetFile.readAsStringSync();
final patterns = isKotlinDsl
? [
RegExp(r'minSdk\s*=\s*(\d+)'),
RegExp(r'minSdkVersion\s*\(\s*(\d+)\s*\)'),
]
: [
RegExp(r'minSdkVersion\s+(\d+)'),
RegExp(r'minSdkVersion\s*=\s*(\d+)'),
];
for (final pattern in patterns) {
final match = pattern.firstMatch(content);
if (match != null) {
return int.tryParse(match.group(1) ?? '');
}
}
return null;
} catch (_) {
return null;
}
}