我需要开发一个 Android 应用程序来检测恶意软件。
我希望根据所有安装的应用程序使用的权限来开发它。请告诉我如何识别其他应用程序使用的权限
最佳答案
您可以像这样获取所有已安装的应用程序权限。
- Get all installed applications
- Iterate over the applications
- Get each application permissions list
- Iterate over the each permission
PackageManager pm = getPackageManager();
List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA);
for (ApplicationInfo applicationInfo : packages) {
Log.d("test", "App: " + applicationInfo.name + " Package: " + applicationInfo.packageName);
try {
PackageInfo packageInfo = pm.getPackageInfo(applicationInfo.packageName, PackageManager.GET_PERMISSIONS);
//Get Permissions
String[] requestedPermissions = packageInfo.requestedPermissions;
if(requestedPermissions != null) {
for (int i = 0; i < requestedPermissions.length; i++) {
Log.d("test", requestedPermissions[i]);
}
}
} catch (NameNotFoundException e) {
e.printStackTrace();
}
}
关于android - 如何获取已安装的应用程序权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7937794/