getFeatures method
Gets the list of features currently in AndroidManifest.xml.
Implementation
List<Map<String, dynamic>> getFeatures() {
final manifestFile = File(_manifestPath);
if (!manifestFile.existsSync()) {
return [];
}
try {
final content = manifestFile.readAsStringSync();
final document = XmlDocument.parse(content);
final manifest = document.rootElement;
final features = <Map<String, dynamic>>[];
for (final feature in manifest.findAllElements('uses-feature')) {
final nameAttr = _androidAttribute(feature, 'name');
final requiredAttr = _androidAttribute(feature, 'required');
if (nameAttr != null) {
features.add({
'name': nameAttr,
'required': requiredAttr?.toLowerCase() == 'true',
});
}
}
return features;
} catch (_) {
return [];
}
}