如何删除React Native Android应用程序发布版本所需的SYSTEM_ALERT_WINDOW权限?

时间:2016-05-12 06:58:57

标签: react-native android-manifest android-permissions

I've read开始,React Native需要权限android.permission.SYSTEM_ALERT_WINDOW才能在调试模式下启用其开发人员界面。但是,在发布版本时,仍然包含此权限,这会导致用户惊慌失措(因为它表示“允许绘制其他应用程序”)。

我可以手动删除AndroidManifest.xml中的权限,但是当我处于开发模式时会破坏应用程序 - 而这并不是我每次发布新版本时都想做的事情。

有没有办法只停用该应用的发布版本的权限?

2 个答案:

答案 0 :(得分:5)

Android Studio有一个解决方案,我希望react-native具有相同的功能:

对于发行版和调试版,您可以有两个单独的AndroidManifest.xml

调试清单应位于${projectPath}\src\debug\AndroidManifest.xml
${projectPath}\src\main\AndroidManifest.xml

中发布清单

您只能将android.permission.SYSTEM_ALERT_WINDOW放在调试清单中,不要将其添加到发布中。

答案 1 :(得分:0)

转到

  

android-> app-> src

创建一个名为release的文件夹,并添加以下内容的AndroidManifest文件

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.flexycabsdrivers"
    xmlns:tools="http://schemas.android.com/tools">

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

</manifest>

在构建版本时,AndroidManifest应该删除该权限,您可以添加要删除的其他权限。

相关问题