如何获取任何已安装的Android应用程序的清单权限

6

是否有可能获取任何已安装的Android应用程序的清单权限?


你想要以编程方式吗? - Jonas
为什么需要其他应用程序权限?我如何知道提供者的应用程序权限?这样我就可以在我的清单文件中定义访问它们的数据。 - Ajay Takur
3个回答

16

感谢提示,我用以下代码让它运行起来:

final Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
final List pkgAppsList = getPackageManager().queryIntentActivities(mainIntent, 0);

for (Object obj : pkgAppsList) {
  ResolveInfo resolveInfo = (ResolveInfo) obj;
  PackageInfo packageInfo = null;
  try {
    packageInfo = getPackageManager().getPackageInfo(resolveInfo.activityInfo.packageName, PackageManager.GET_PERMISSIONS);
  } catch (NameNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
  }

  String[] requestedPermissions = packageInfo.requestedPermissions;
}

2

0
如果您有apk文件,那么非常简单,只需从开始菜单打开cmd并输入以下命令行即可:
aapt d permissions D:\dina\app-debug.apk 

请注意您编写的路径,然后您就可以获取此应用程序和包名称中所有权限的列表,就像这样:

package: com.example.dinasaif.facebookintegration
uses-permission: android.permission.INTERNET

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接