如何解决如何将 expo-image-picker 与 android 11 范围存储一起使用?
我在 expo 托管的 React Native 应用程序中使用了 expo-image-picker。它工作正常。 我只需要使用相机拍摄新照片并从图库中为我的应用挑选照片。 对于这些,我使用了以下 API
ImagePicker.requestMediaLibraryPermissionsAsync()
ImagePicker.requestCameraPermissionsAsync()
ImagePicker.launchImageLibraryAsync()
ImagePicker.launchCameraAsync()
对于 android,我在 app.json 文件中的权限数组如下
"permissions": [
"CAMERA","CAMERA_ROLL","READ_EXTERNAL_STORAGE","WRITE_EXTERNAL_STORAGE","LOCATION"
]
现在谷歌给我发送了这封电子邮件
我们检测到您的应用包含 requestLegacyExternalStorage 1 个或多个 app bundle 或 APK 的清单文件中的标志。
在运行 Android 11+ 的设备上使用应用的开发者必须使用 Scoped 存储,让用户更好地控制他们的设备存储。 要在 5 月 5 日之后在 Android 11 或更高版本上发布您的应用,您必须 要么:
更新您的应用以使用更隐私的最佳做法,例如 存储访问框架或媒体商店 API 将您的应用更新为 在中声明所有文件访问 (MANAGE_EXTERNAL_STORAGE) 权限 清单文件,并完成所有文件访问权限 从 5 月 5 日起在 Play 管理中心声明删除所有文件访问权限 完全来自您的应用的许可 对于面向 Android 11 的应用, requestLegacyExternalStorage 标志将被忽略。您必须使用 所有文件访问权限保留广泛访问权限。
请求访问所有文件访问权限的应用程序没有 允许的使用将从 Google Play 中删除,您将无法 发布更新。
谁能帮我解决这个问题? 我需要更改我的图像选择器 api 中的任何内容吗?或者我是否需要从我的权限数组中添加/删除某些内容? 请帮帮我...拜托...
解决方法
得到解决方案。 其实我的代码没有问题。是谷歌让我感到困惑。 这是详细信息https://github.com/expo/expo/issues/12603#issuecomment-827600227
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。