Android手机上的可访问SQLiteDatabase

时间:2012-02-16 03:12:43

标签: android sqlite

我目前正在为Android操作系统编写电话簿类型的应用程序。我目前正在使用SQLiteDatabase来保存我的联系信息。我知道数据库保存在

data/data/package-name/databases

但是,我需要root访问才能在Android手机上找到该目录。有没有办法把数据库放在我能找到的地方,而不必根电话?

1 个答案:

答案 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