updateAndroidManifest method
void
updateAndroidManifest(
- String andConfiguration
)
Implementation
void updateAndroidManifest(String andConfiguration) async {
final File androidManifestFile = File(_androidManifestFileName);
final List<String> lines = await androidManifestFile.readAsLines();
bool inActivity = false;
bool inTargetActivity = false;
bool inPreviousContent = false;
List<String> newLines = [];
for (int x = 0; x < lines.length; x++) {
String line = lines[x];
if (line.contains(_delimiter)) {
inPreviousContent = !inPreviousContent;
continue;
}
if (line.contains('</activity>')) {
if (inTargetActivity) {
newLines.addAll(andConfiguration.split('\n'));
}
inActivity = false;
}
if (line.contains('<activity')) {
inActivity = true;
}
if (inActivity && line.contains(_androidActivity)) {
inTargetActivity = true;
}
if (inPreviousContent == false) {
newLines.add(line);
}
}
androidManifestFile.writeAsString(newLines.join('\n'));
print('Android Manifest updated ($_androidManifestFileName)');
}