java之安卓Q : SQLite database in scoped storage
xiaohuochai
阅读:50
2024-06-20 12:54:19
评论:0
在 Android Q 中引入了新的 Scoped storage功能,其中说:
apps that target Android 10 (API level 29) and higher are given scoped access into external storage, or scoped storage, by default. Such apps have access only to the app-specific directory on external storage, as well as specific types of media that the app has created.
我有我的应用程序在外部存储上创建 SQLite 数据库,这样当应用程序卸载时数据库仍然存在并且可以稍后用作恢复或在 Android 设备之外使用(比如说在 PC 中)
我应该如何使用 Android Q 达到相同的效果?更准确地说,如果数据库存储在外部公共(public)目录中 - 我如何使用标准
SQLiteOpenHelper
读取此数据库?
请您参考如下方法:
您可以尝试使用文档中的解决方案:
https://developer.android.com/training/data-storage/compatibility
requestLegacyExternalStorage
的值至true
在您应用的 list 文件中:<manifest ... >
<!-- This attribute is "false" by default on apps targeting Android 10 or higher. -->
<application android:requestLegacyExternalStorage="true" ... >
...
</application>
</manifest>
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。