2013-05-07 15 views
23

Androidのドキュメントには、adb grantコマンドとadb revokeコマンドの説明があります。adb grantまたはadb revokeはどのように使用しますか?

grant <PACKAGE_PERMISSION> 

アプリケーションに許可を与えます。アプリケーションが宣言したオプションの権限のみを付与することができます。

revoke <PACKAGE_PERMISSION> 

アプリケーションへのアクセス許可を取り消します。アプリケーションが宣言したオプションの権限のみを取り消すことができます。

誰でも正しい構文の例を挙げてください。

android.permission.WRITE_EXTERNAL_STORAGEのような許可、またはおそらくちょうどWRITE_EXTERNAL_STORAGEのようになります。さて、私はそれらを試してみましたが、私はそれを働かせることができませんでした。

私もロリポップでそう

答えて

34

(これは一つのパッケージではなく、すべてのアクセス許可を変更するコマンドのように聞こえる)(無駄に)私にはもっと意味があるパッケージと許可のいくつかの組み合わせを、試してみました私はあなたが最初に、あなたが動作するはずしようとしたものを「adbのシェル」を行う必要があると思う:

adb shell pm grant com.name.app android.permission.READ_PROFILE 

これはAndroidのMに変更することになっていると、あなただけを使用することができるはずです。

adb shell pm revoke com.name.app android.permission.READ_PROFILE 

許可の完全な一覧はhereです。 android build toolsが設定されている場合は、アプリがどの権限を使用しているかを確認できます。まず、使用

adb shell pm list packages -f 

は、次にコンピュータあなたにパッケージをコピーします。

adb pull /path/to/package/from/previous/step.apk 

その後、権限を取得:

aapt d permissions path/to/app/on/computer.apk 
+1

を使用することができますすべての権限をクリアしたくないために起こる場合は?代わりがありますか? –

2

は、だからここにあなたのアプリを付与する小さなコマンドライン(MAC/Linux)のですコマンドラインから必要なすべての権限

aapt d permissions ./path/to/your.apk \ 
    | sed -n \ 
    -e "s/'//g" \ 
    -e "/^uses-permission: name=android.permission\./s/^[^=]*=//p" \ 
    | xargs -n 1 adb shell pm grant com.your.package 
5

あなたは、許可の名前を知っているか、あなたはPACKAGE_USAGE_STATSは、この方法を付与することはできませんどのように来る

adb shell pm reset-permissions your.package.name 
+3

**すべてのシステム権限をリセットするので、このコマンドに注意してください。** pm reset-permissionsはパラメータなしです。 your.package.nameは気にしません。 –

関連する問題