Как получить явные разрешения для любого установленного приложения для Android - PullRequest
6 голосов
/ 08 декабря 2010

Можно ли получить разрешения манифеста для любого установленного приложения Android?

Ответы [ 3 ]

14 голосов
/ 10 декабря 2010

Спасибо за подсказку, запустил с:

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 голосов
/ 08 декабря 2010

Получить установленные пакеты, используя это.

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

И используйте имя пакета, чтобы получить информацию.

http://developer.android.com/reference/android/content/pm/PackageInfo.html

0 голосов
/ 18 апреля 2016

Если у вас есть файл apk, то это очень просто, просто откройте cmd из начального меню и напишите следующую командную строку: aapt d права доступа D: \ dina \ app-debug.apk

позаботьтесь о пути, который вы пишете, тогда вы можете получить список всех разрешений в этом приложении и имя пакета также, как это

пакет: com.example.dinasaif.facebookintegration использование-разрешение: android.permission.INTERNET

...