react-native删除默认的android权限

时间:2018-02-28 09:21:03

标签: android react-native android-permissions

我使用react-native init ProjectName创建了一个新的react-native应用程序。

然后,我从android.permission.INTERNET删除了android.permission.SYSTEM_ALERT_WINDOWAndroidManifest.xml

使用cd android && ./gradlew assembleRelease我创建了一个新的APK。

然后我用aapt dump badging app-release-unsigned.apk分析了它。重要输出:

uses-permission: name='android.permission.SYSTEM_ALERT_WINDOW'
uses-permission: name='android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission: name='android.permission.READ_PHONE_STATE'
uses-permission: name='android.permission.READ_EXTERNAL_STORAGE'

这些权限来自哪里?我该如何删除它们?我不会使用其中任何一个。

2 个答案:

答案 0 :(得分:0)

我认为在构建发布版apk时这是一个问题。我在media上找到了一篇文章,其中介绍了如何通过编辑gradle文件而不是AndroidManifest.xml来删除权限。看看这个:https://medium.com/@applification/fixing-react-native-android-permissions-9e78996e9865

希望这会有所帮助;)

答案 1 :(得分:0)

试试这个!

Manifest.xml

<uses-permission android:name="${permissionName}" tools:node="remove"/>

<uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove"/>

对其他人做同样的事。