wangzhibo
2026-08-30 af6b816e29ebe329c59cfdd368bf41d2a4940946
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package com.jsbogang.womp.health;
 
import android.content.Context;
 
import androidx.room.Database;
import androidx.room.Room;
import androidx.room.RoomDatabase;
 
@Database(entities = {HealthSample.class, SleepSession.class, SyncCursor.class}, version = 1, exportSchema = false)
public abstract class AppDatabase extends RoomDatabase {
    private static volatile AppDatabase INSTANCE;
 
    public abstract HealthDao healthDao();
 
    public static void init(Context context) {
        if (INSTANCE == null) {
            synchronized (AppDatabase.class) {
                if (INSTANCE == null) {
                    INSTANCE = Room.databaseBuilder(context.getApplicationContext(),
                                    AppDatabase.class, "womp_health.db")
                            .allowMainThreadQueries()
                            .fallbackToDestructiveMigration()
                            .build();
                }
            }
        }
    }
 
    public static AppDatabase get() {
        return INSTANCE;
    }
 
    public static HealthDao dao() {
        return INSTANCE.healthDao();
    }
}