【问题标题】:React-Native unnecessary Android user permissions automatically added on build?React-Native 在构建时自动添加了不必要的 Android 用户权限?
【发布时间】:2015-11-16 04:10:22
【问题描述】:

似乎读/写外部存储和读取手机状态权限在构建 android apk 时会自动添加到清单中。这些对于所有 React Native android 应用程序都是必需的吗?有什么办法可以取消这些权限?

查看 build/output/logs/manifest-merger-debug-report.txt 我看到了:

android:uses-permission#android.permission.READ_EXTERNAL_STORAGE
IMPLIED from `/***/android/app/src/main/AndroidManifest.xml:1:1-22:12 reason: org.webkit.android_jsc` requested WRITE_EXTERNAL_STORAGE

如果我从 Play 商店安装应用程序(如果我不使用这些权限),我会看到请求这些权限,这感觉很奇怪。

【问题讨论】:

  • 我也有同样的问题。这是我的 AndroidManifest.xml gist.github.com/1985media/385f726cf4f035ec3ed1
  • 这似乎与stackoverflow.com/questions/1747178/… 有关。但是,仅将其添加到我自己的清单是不够的:android/app/build/outputs/logs/manifest-merger-debug-report.txt 建议添加权限,因为 org.webkit.android_jsc 的 targetSdkVersion
  • 我们有没有找到解决方案?我的 React Native 应用程序仍在获得额外的权限。

标签: android react-native


【解决方案1】:

我有一个答案。

AndroidManifest.xml

将此添加到应为第 1 行的清单

xmlns:tools="http://schemas.android.com/tools"

应该是这样的

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

现在您可以使用此删除权限

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

所以我对一个简单应用的权限是

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" tools:node="remove" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" tools:node="remove" />

不要删除SYSTEM.ALERT.WINDOW,你会在开发中遇到问题。

【讨论】:

  • 也不要删除在调试模式下运行的 Internet 权限。它需要他们联系包装商。
  • SYSTEM.ALERT.WINDOW 我已将其从生产版本中删除,我该怎么做
猜你喜欢
  • 1970-01-01
  • 2014-09-23
  • 1970-01-01
  • 2018-07-18
  • 2019-06-07
  • 1970-01-01
  • 1970-01-01
  • 2022-01-05
  • 1970-01-01
相关资源
最近更新 更多