Android Marshmallow 上的应用包含预填充的 sqlite 数据库时出现权限问题
Permission trouble when including pre-populated sqlite database with app on Android Marshmallow
我正在尝试在我的应用程序中包含一个预填充的 sqlite 数据库。我已将它放在 main/assets/dbname.db
并将其复制到我的自定义 Application
子类的 onCreate()
中。
它适用于较低版本的 Android。但是在 Marshmallow 上,我遇到了权限障碍。除非我在 activity 中,否则我无法请求存储写入权限。所以我将数据库复制部分移到了第一个启动的 activity 中,在 activity 的 onCreate()
中。但出于某种原因,在我授予权限后,我的应用程序立即关闭。我必须重新启动它才能工作。
我一直在寻找有关如何为 Android Marshmallow 提供预填充数据库的最佳实践,但没有取得太大的成功。有什么想法吗?
我最终使用了这个插件 Android SQLite Asset Helper,它似乎没有任何问题。
我正在尝试在我的应用程序中包含一个预填充的 sqlite 数据库。我已将它放在 main/assets/dbname.db
并将其复制到我的自定义 Application
子类的 onCreate()
中。
它适用于较低版本的 Android。但是在 Marshmallow 上,我遇到了权限障碍。除非我在 activity 中,否则我无法请求存储写入权限。所以我将数据库复制部分移到了第一个启动的 activity 中,在 activity 的 onCreate()
中。但出于某种原因,在我授予权限后,我的应用程序立即关闭。我必须重新启动它才能工作。
我一直在寻找有关如何为 Android Marshmallow 提供预填充数据库的最佳实践,但没有取得太大的成功。有什么想法吗?
我最终使用了这个插件 Android SQLite Asset Helper,它似乎没有任何问题。