微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Android 11 上访问 SQLite 数据库

如何解决在 Android 11 上访问 SQLite 数据库

我知道公共外部存储从 Android 11 更改。但我不确定将我的 sqlite 数据库放在哪里以及如何访问它。如果卸载了应用程序,则不得删除数据库。其他应用也必须能够访问此 sqlite 数据库

在 Android 10 及以下我使用:Android.OS.Environment.ExternalStorageDirectory.AbsolutePath 来获取我的 sqlite 数据库的路径。

我必须如何针对 Android 11 进行调整?

解决方法

Android 11(API 级别 30)进一步增强了平台,为外部存储上的应用和用户数据提供更好的保护。此版本引入了多项增强功能,例如原始文件路径访问、媒体的批量编辑操作以及存储访问框架的更新用户界面。

该版本还对 scoped storage 进行了改进,这使开发人员在迁移到使用此存储模型后更容易实现他们的 storage use cases

在 Android 11 上运行但面向 Android 10(API 级别 29)的应用仍然可以请求 requestLegacyExternalStorage 属性。此标志允许应用程序暂时退出与范围存储相关的更改,例如授予对不同目录和不同类型媒体文件的访问权限。在您将应用更新为面向 Android 11 后,系统会忽略 requestLegacyExternalStorage 标志。

更多详情,您可以查看文档:{​​{3}} .

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。