getPermissions method
Gets the list of permissions currently in AndroidManifest.xml.
Implementation
List<String> getPermissions() {
final manifestFile = File(_manifestPath);
if (!manifestFile.existsSync()) {
return [];
}
try {
final content = manifestFile.readAsStringSync();
final document = XmlDocument.parse(content);
final manifest = document.rootElement;
const androidNs = 'http://schemas.android.com/apk/res/android';
final permissions = <String>[];
for (final permission in manifest.findAllElements('uses-permission')) {
final nameAttr =
permission.getAttribute('name', namespace: androidNs) ??
permission.getAttribute('android:name');
if (nameAttr != null) {
permissions.add(nameAttr);
}
}
return permissions;
} catch (_) {
return [];
}
}