Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Room:以SQLite格式保存和导出数据库_Android_Sqlite_Android Room - Fatal编程技术网

Android Room:以SQLite格式保存和导出数据库

Android Room:以SQLite格式保存和导出数据库,android,sqlite,android-room,Android,Sqlite,Android Room,我使用Room保存数据: @Database(entities = {Colis.class}, version = 1) public abstract class ChloeDatabase extends RoomDatabase { public abstract ColisDao colisDao(); private static volatile ChloeDatabase INSTANCE; public static ChloeDatabase ge

我使用Room保存数据:

@Database(entities = {Colis.class}, version = 1)
public abstract class ChloeDatabase extends RoomDatabase {

    public abstract ColisDao colisDao();
    private static volatile ChloeDatabase INSTANCE;

    public static ChloeDatabase getDatabase(final Context context) {
        if (INSTANCE == null) {
            synchronized (ChloeDatabase.class) {
                if (INSTANCE == null) {
                    INSTANCE = Room.databaseBuilder(context.getApplicationContext(),
                            ChloeDatabase.class, "my_database")
                            // Wipes and rebuilds instead of migrating if no Migration object.
                            // Migration is not part of this codelab.
                            .fallbackToDestructiveMigration()
                            .build();
                }
            }
        }
        return INSTANCE;
    }
}
但我真正想要的是将数据以sqlite格式保存在
sdcard
中(这样我就可以将
my_database.sqlite
文件导出到
/sdcard/Android/data/my_package/my_database.sqlite
,无论它是在模拟器上还是在真实设备上)

我在网上搜索了一整天都没有找到答案。
有人能帮我解决这个问题吗?

您可以在连接仿真器或物理设备后提取数据库,如下所示:

  • 转到DeviceFileExplorer

  • 资料

  • 资料

  • 查找你的应用程序名称

  • 数据库

    然后找到你的数据库。这是一个较大的文件。然后把它放到你的手机存储器里。之后,如果您想检查计算机中的数据,您可以使用Sqlite语法执行查询,只需使用这里的小玩具


您好,我想您没有抓住重点,我想用sdcard目录以编程方式保存我的数据库,但sqlite是一个带有sufix.sq的文件,我有点困惑我的缺点,但我没有发现任何后缀.sq,或者可能是一个.sqlite,对此不确定,但问题是:当您创建一个数据库时,它本身就是一个文件,其自身带有数据库后缀。所以答案是,如果您想将此文件移动到其他地方,您必须这样做,否则它已经在您的存储中创建