如何在Android中删除不必要的权限?

时间:2011-08-01 08:49:12

标签: android permissions android-manifest

在真实设备上安装我的应用程序时会显示一些未在Manifest中编码的其他权限,例如我编码:

<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />

安装时我还看到存储(修改/删除USB存储内容)和电话(读取电话状态和ID)权限。

(活动不使用任何其他权限。)

我想知道,如何删除它们。

1 个答案:

答案 0 :(得分:3)

Android 1.6更新日志:http://developer.android.com/sdk/android-1.6.html#api

  

WRITE_EXTERNAL_STORAGE :允许   应用程序写入外部   存储。 使用API​​级别的应用程序   将隐式授予3及更低版本   这个许可(这将是   对用户可见) ;应用   使用API​​级别4或更高级别必须   明确请求此权限。

但这只是其中之一。由于某种原因,官方更改日志缺少有关READ_PHONE_STATE的信息。完整的故事在这里被清除:http://blogs.zdnet.com/Burnette/?p=1369&page=3

  

新权限。 1.6程序必须   明确要求    WRITE_EXTERNAL_STORAGE 权限   能够修改的内容   SD卡,他们必须明确   请求 READ_PHONE_STATE   允许能够   检索手机状态信息。的 应用程序   始终定位早期版本   隐式请求这些权限。

正如您所看到的,当安装在运行1.6或更高版本的手机上时,无法发布针对1.5或更早版本的应用而无需请求这些权限。

引自Android permissions: Phone Calls: read phone state and identity