Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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中创建SqliteOpenHelper作为单例类吗_Android_Sqlite - Fatal编程技术网

我们需要在android中创建SqliteOpenHelper作为单例类吗

我们需要在android中创建SqliteOpenHelper作为单例类吗,android,sqlite,Android,Sqlite,在我的应用程序的所有活动中使用单个数据库实例是线程安全的。如果我这样做了,我应该什么时候关闭数据库连接。 请推荐使用SqliteOpenHelper的正确方法。我一直在使用一种在在线课程中找到的方法,没有任何问题。只需为数据库实例放置一个synchronized关键字,以便多个线程可以同时管理它。这就是我正在使用的: synchronized static AppDatabase getInstance(Context context) { if (instance == null) {

在我的应用程序的所有活动中使用单个数据库实例是线程安全的。如果我这样做了,我应该什么时候关闭数据库连接。
请推荐使用SqliteOpenHelper的正确方法。

我一直在使用一种在在线课程中找到的方法,没有任何问题。只需为数据库实例放置一个synchronized关键字,以便多个线程可以同时管理它。这就是我正在使用的:

synchronized static AppDatabase getInstance(Context context) {
    if (instance == null) {
        instance = new AppDatabase(context.getApplicationContext());
    }
    return (instance);
}

你不需要关闭数据库。检查这个