2011-11-24 74 views
5

我有Android應用程序,我想檢查在清單中提到的每個權限是否需要?從清單中刪除額外的不需要的權限android

基本上我想刪除不需要的權限。

我該怎麼辦?

在此先感謝

+1

產品/欺騙:清理未使用的Android權限(http://stackoverflow.com/questions/18362305/clean-up-unused-android - 許可) – blahdiblah

回答

4

user370305給出的答案通常是正確的答案。您的第三方代碼應充分記錄所需的權限 - 將其與您自己的代碼所需的權限相結合,並且應該設置。

如果你覺得這還不夠,那麼:

第1步:寫單元測試套件。

步驟#2:將測試添加到套件,直到您有完整的語句覆蓋。

步驟3:獲取單元測試套件中傳遞的所有測試。

步驟#4:刪除權限,看看測試是否失敗。恢復導致測試套件失敗的權限。重複您不確定的所有權限。

1

你應該知道哪些功能和組件是在應用程序中使用。在該組件的需求基礎上,您只需添加這些權限。不是全部。 Jusi通過手動清單檢查並刪除其他權限。

+0

有些時候,我們採用開源,完成我們的任務,並有可能我們不知道。並手動刪除權限,它可能會發生錯誤,我刪除需要的一個,它會產生異常。 –

5

對於Android Studio中:

1)找到添加有權限(表觀\構建\中間體\艙單)

2)添加這些權限的工具:節點= 「去除」

例如:

我發現我有不需要的權限:

使用許可權的android:NAME = 「android.permission.WRITE_EXTERNAL_STORAGE」

我加入這對我的應用清單,刪除它:

使用許可權的android:NAME =「android.permission.WRITE_EXTERNAL_STORAGE 「tools:node =」remove「

1

您可以刪除權限並檢查lint結果。 如果結果很乾淨,那麼權限沒有被使用。

Analyse -> Run Inspection by Name -> Type "Missing Permissions" -> Run

的Android Studio版本:3.0.1