我目前正在为Android操作系统编写电话簿类型的应用程序。我目前正在使用SQLiteDatabase来保存我的联系信息。我知道数据库保存在
中data/data/package-name/databases
但是,我需要root访问才能在Android手机上找到该目录。有没有办法把数据库放在我能找到的地方,而不必根电话?
答案 0 :(得分:1)
只需以编程方式将数据库复制到SD卡即可。 此代码是如何访问DB =)
的示例 try {
input = new FileInputStream("/data/data/my_package_name/databases/" + DATABASE_NAME);
File dir = new File("/sdcard/database_dump");
dir.mkdir();
OutputStream output = new FileOutputStream("/sdcard/debugdump/myDb.db");
byte[] buffer = new byte[1024];
int length;
while ((length = input.read(buffer))>0) {
output.write(buffer, 0, length);
}
output.flush();
output.close();
input.close();
} catch (Exception e) {
e.printStackTrace();
}
将数据库复制到SD卡后,您可以使用您喜欢的任何SQLite编辑器在PC上使用它。例如:http://www.softpedia.com/get/Internet/Servers/Database-Utils/SqlPro.shtml