为什么在Android Pie中创建数据库时需要close()?

时间:2018-11-28 06:54:06

标签: android sqlite

我正在使用以下代码从资产中复制数据库

public void createDataBase() {
        boolean dbExist = this.checkDataBase();
        if (!dbExist) {
            this.getWritableDatabase();
            **this.close();**
            try {
                this.copyDataBase();
            } catch (IOException var3) {
                var3.printStackTrace();
                throw new Error("Error copying database");
           }
    }

}

在上面的代码中,如果我提供 this.close(),则无法在android P中工作。我无法创建和查询数据库。但是在以前的版本中,它运行良好。我知道,一旦使用就关闭数据库对象是一个好习惯。但是,Android Pie中此行为的原因是什么?

要了解Pie中的这个问题,我引用了此链接,但找不到解释。

Android P - 'SQLite: No Such Table Error' after copying database from assets

0 个答案:

没有答案