android指定数据库的路径
2016-02-18 12:13
381 查看
需求说明:
默认数据库会存储到 /data/data/apk包名/databases/ 目录下,但为了实现项目的可移植,或者离线数据的展示等功能。需要将数据库放到指定文件夹下。
实现:
public class MyDatabaseOpenHelper extends SQLiteOpenHelper {
//类没有实例化,是不能用作父类构造器的参数,必须声明为静态
private static final String name = "/mnt/sdcard/temp/database.db"; //数据库路径及名称
private static final int version = 1; //数据库版本
public MyDatabaseOpenHelper(Context context){
super(context, name, null, version);
}
}
如上所示代码。
别忘记相关权限
<!-- 在SDCard中创建与删除文件权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
关键点:
指定数据库名称的时候,改为数据库的完整路径+数据库名称。这样在 /data/data/apk包名/ 目录下就不会再有 databases 文件夹了,而在自己定义的目录结构/mnt/sdcard/temp/下就会创建相应名称的数据库了。)
默认数据库会存储到 /data/data/apk包名/databases/ 目录下,但为了实现项目的可移植,或者离线数据的展示等功能。需要将数据库放到指定文件夹下。
实现:
public class MyDatabaseOpenHelper extends SQLiteOpenHelper {
//类没有实例化,是不能用作父类构造器的参数,必须声明为静态
private static final String name = "/mnt/sdcard/temp/database.db"; //数据库路径及名称
private static final int version = 1; //数据库版本
public MyDatabaseOpenHelper(Context context){
super(context, name, null, version);
}
}
如上所示代码。
别忘记相关权限
<!-- 在SDCard中创建与删除文件权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
关键点:
指定数据库名称的时候,改为数据库的完整路径+数据库名称。这样在 /data/data/apk包名/ 目录下就不会再有 databases 文件夹了,而在自己定义的目录结构/mnt/sdcard/temp/下就会创建相应名称的数据库了。)
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件