首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在迁移到Android Api级别29时,我收到这个错误,requestLegacyExternalStorage not found,failed processing manifest

在迁移到Android API级别29时,如果收到错误消息"requestLegacyExternalStorage not found",这是因为在Android 10(API级别29)中,Google引入了一项新的存储权限策略,即Scoped Storage(作用域存储)。Scoped Storage限制了应用对外部存储的访问权限,以提高用户数据的安全性和隐私保护。

在Android 10之前的版本中,应用可以自由访问外部存储上的文件,而在Android 10及更高版本中,应用默认只能访问其私有目录,需要通过特定的权限来访问共享的外部存储空间。

要解决"requestLegacyExternalStorage not found"错误,可以采取以下步骤:

  1. 在AndroidManifest.xml文件中的<application>标签内添加以下代码:
代码语言:txt
复制
<application
    ...
    android:requestLegacyExternalStorage="true">
    ...
</application>

这将启用旧的存储权限模式,允许应用继续访问外部存储空间。

  1. 确保你的应用在AndroidManifest.xml文件中声明了正确的存储权限。例如,如果你的应用需要读取外部存储上的文件,需要添加以下权限声明:
代码语言:txt
复制
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
  1. 如果你的应用需要在Android 10及更高版本上运行,并且需要访问外部存储空间,建议你迁移到Scoped Storage。Scoped Storage提供了一种更安全和可控的方式来访问外部存储,并且符合Google Play商店的最新要求。

对于Scoped Storage的详细信息和迁移指南,你可以参考Google官方文档:Scoped Storage

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券