微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

每次杀死应用程序时,我在数据库中的数据都会被删除吗?

如何解决每次杀死应用程序时,我在数据库中的数据都会被删除吗?

在我的android应用中,我使用Room Database库将数据存储在数据库中。我可以在单个会话中存储和获取数据,这没有问题。问题是当我关闭应用程序并再次打开时,我没有得到存储在本地数据库中的数据。这些数据被删除了。

我已经在google中搜索了,其中一些人说是使用databaseBuilder创建房间数据数据库实例。但是我只用它,但是却遇到了这个错误

这是我的实例初始化。

这是我的AppDtabase类;

@Database(entities = {SelectedBuilding.class},exportSchema =true,version=2)
public abstract class AppDatabase extends RoomDatabase {
    private static AppDatabase INSTANCE;

    public abstract SelectedBuildingDao myDao();

    public static AppDatabase getAppDatabase(Context context){
        if (INSTANCE==null){
            INSTANCE= Room.databaseBuilder(context.getApplicationContext(),AppDatabase.class,"Selected_buildings")
                    .addMigrations(MIGRATION_1_2)
                    .build();
        }
        return INSTANCE;
    }

    public static void destroyInstance(){
        INSTANCE=null;
    }

    static final Migration MIGRATION_1_2 = new Migration(1,2) {
        @Override
        public void migrate(SupportsqliteDatabase database) {
            database.execsql("ALTER TABLE selected_building ADD COLUMN Building_Id TEXT");
        }
    };



}

 INSTANCE= Room.databaseBuilder(context.getApplicationContext(),"Selected_area").build();

有人可以帮助我解决此问题吗? 预先感谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。