web-dev-qa-db-ja.com

Android adbを介したアプリケーションの許可のリスト

Adbを使用して、Androidアプリケーションに必要なアクセス許可を見つけるにはどうすればよいですか?

異なるデバイス上の複数のアプリケーションの権限を表示したいので、Google PlayまたはSettings> Applications managerは手作業が多すぎます。

48
Juuso Ohtonen

JasonとJuusoの答えを組み合わせて、前者はgrantedであった許可をリストし、後者はrequested(許可されたものを含む) 。

付与された権限のみ(ただし、リクエストされたが付与されていない権限は省略)を表示するには

adb Shell dumpsys package packagename

出力の下部にあるgrantedPermissionsセクションを確認します。

すべての許可(要求されたが付与されていない+要求および付与された)をリストするには:

  1. パッケージのAPKに注目してください。同じコマンドを実行できます

    adb Shell dumpsys package packagename
    

    出力のcodePath要素からAPKパスを取得します。

  2. (デバイス/エミュレータにaaptがない場合)Juuso Ohtonenが答えで指摘したように、デバイス/エミュレータからapkをプルする必要があります。そのため、デスクトップから次のようなものを実行します。

    adb pull /data/app/com.your.package.apk
    
  3. パッケージのすべての許可をリストする

    デバイス/エミュレータにない場合、aaptがAndroid SDK。)のbuild-tools/<version>/にあります。

    次に実行する

    aapt d permissions /path/to/com.your.package.apk
    
69
Denis Kniazhev
  1. すべてのアプリケーションとそのインストールパスをリストします(-3サードパーティのアプリのみに関心がある場合はフラグを立ててください)。例として、YouTubeアプリの権限を調べてみましょう。
    adb Shell pm list packages -f

    出力:

    ...
    package:/data/app/com.google.Android.youtube-1.apk=com.google.Android.youtube
    ...

  2. 選択したapkをデバイスから引き出します:
    adb pull /data/app/com.google.Android.youtube-1.apk

  3. 許可をリストする
    aapt d permissions com.google.Android.youtube-1.apk

出力:

    uses-permission: Android.permission.BROADCAST_STICKY
    uses-permission: Android.permission.CALL_PHONE
    uses-permission: Android.permission.CALL_PRIVILEGED
    uses-permission: Android.permission.WRITE_SETTINGS
    uses-permission: Android.permission.WRITE_SECURE_SETTINGS
    uses-permission: Android.permission.READ_CONTACTS
    uses-permission: Android.permission.READ_CALL_LOG
    uses-permission: Android.permission.WRITE_CONTACTS
    uses-permission: Android.permission.WRITE_CALL_LOG
    uses-permission: Android.permission.SYSTEM_ALERT_WINDOW
    uses-permission: Android.permission.INTERNAL_SYSTEM_WINDOW
    uses-permission: Android.permission.ADD_SYSTEM_SERVICE
    uses-permission: Android.permission.VIBRATE
    uses-permission: Android.permission.BLUETOOTH
    uses-permission: Android.permission.BLUETOOTH_ADMIN
    uses-permission: Android.permission.REORDER_TASKS
    uses-permission: Android.permission.CHANGE_CONFIGURATION
    ...

...

15
Juuso Ohtonen

高速な方法:adb Shell dumpsys package packagename | grepの許可

11
jason