重新启动我的应用程序后,房间数据丢失 [英] Room data is lost after my app is restarted

查看:45
本文介绍了重新启动我的应用程序后,房间数据丢失的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在应用程序中实现了Room的简单实现.它有两个实体.应用程式执行时运作正常.但是重新启动应用程序后,我看不到任何数据.

I have a simple implementation of Room in my app. It has two entities. It works fine while app is running. But I see no data once app is restarted.

这是我的数据库创建代码-

This is my database creation code -

@Database(entities = {Person.class, College.class}, version = 1,  exportSchema = true)
public abstract class AppDatabase extends RoomDatabase {
    private static AppdDatabase INSTANCE;
    public abstract PersonDao personDao();
    public abstract CollegeDao collgeDao();

    public static AppDatabase getInstance(Context context) {
        if (INSTANCE == null) {
            INSTANCE = Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, "my-sample-app.db")
                    .build();
        }
        return INSTANCE;
    }

    public static void destroyInstance() {
        if (INSTANCE != null) INSTANCE.close();
        INSTANCE = null;
    }
}

在任何正在运行的会话中,我都可以添加和查看数据,但应用程序重启后无可用.我在这里想念什么?

In any running session, I can add and view data but nothing is available after app restart. What am I missing here?

谢谢

推荐答案

这是一个愚蠢的错误-

我没有使用有问题的 getInstance() ,而是使用以下代码创建数据库-

I wasn't using getInstance() posted in question, I was using below code to create database instead -

mDb = Room.inMemoryDatabaseBuilder(mContext, AppDatabase.class)

我的代码可以与有问题的原始代码一起使用.

My code works as intended with original code posted in question.

谢谢

这篇关于重新启动我的应用程序后,房间数据丢失的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆