Android,Ormlite,数据库位置

Android,Ormlite,数据库位置,第1张

概述我正在使用Ormlite来保存我的 Android应用程序中的一些数据(在Motorola Xoom上运行).默认情况下,sql数据库保存到/ data / data / [package name] / databases / [dbname] .db.麻烦的是,Xoom没有root,因此用户无权访问保存db的目录(无法复制/备份/编辑db的内容). 我已经在其中一个类中添加了一些额外的代码来将 我正在使用Ormlite来保存我的 Android应用程序中的一些数据(在Motorola Xoom上运行).默认情况下,sql数据库保存到/ data / data / [package name] / databases / [dbname] .db.麻烦的是,Xoom没有root,因此用户无权访问保存db的目录(无法复制/备份/编辑db的内容).

我已经在其中一个类中添加了一些额外的代码来将数据库从/ data复制到sd卡,这很好,但实际上我认为应该可以设置数据库存储位置的路径.我错过了什么,或者Ormlite不可能这样做?

提前致谢,
C

解决方法 如果您使用类似的东西,可以在SDCard上创建数据库
public class DatabaseHelper extends OrmlitesqliteOpenHelper {[...]public DatabaseHelper(final Context context) {    super(context,Environment.getExternalStorageDirectory().getabsolutePath()    + file.separator + DATABASE_name,null,DATABASE_VERSION);}

这样就可以创建db文件. /mnt/sdcard/AndroID/data/com.your.app/files/myData.sqlite
Pro:保存内存
Con:当SDCard不可用时无法访问数据库(例如,当它连接到PC时)
此外,任何可能是赞成或反对的人都可以阅读.

使用context.getExternalfilesDir()而不是Environment.getExternalStorageDirectory()将使用特定于您的应用的位置,并在卸载后自动清理(并且在应用更新时也显示在2.2上).

附:我在某处看到这种方法可能不适用于2.2之前的AndroID版本(?)

总结

以上是内存溢出为你收集整理的Android,Ormlite,数据库位置全部内容,希望文章能够帮你解决Android,Ormlite,数据库位置所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1130890.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存