Phonegap Android 权限

Phonegap Android permissions

我有一个 Phonegap 应用程序,目前正在为 Android 开发和测试。问题是,当我发布到设备时,Android 清单充满了我没有要求的权限请求。

我尝试添加:

<preference name="permissions" value="none" />

到config.xml但还是不行。

怎么才能只让"Network permission"?

您必须从 AndroidManifest 中删除不需要的权限。这些权限标有 <uses-permission>。示例:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

请记住,如果您删除应用正常运行所需的权限,您的应用将会崩溃。

此外,如果需要,一些外部库会添加自己的权限。如果您确实使用外部库,请检查它们需要哪些权限。这些权限是在编译时定义的,在您的清单文件中是不可见的。

编辑

这是您在 Android Studio

中找到清单文件的地方

这是您可以在 Eclipse 中找到它的地方

如果您使用的是 PhoneGap Build(不是命令行工具)并且某些插件正在添加您知道您的应用不需要的权限,您可以通过向 config.xml 添加行来删除这些权限,例如:

<gap:config-file platform="android" parent="/manifest" mode="delete">
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
</gap:config-file>