Почему close () необходимо при создании базы данных в Android Pie? - PullRequest
0 голосов
/ 28 ноября 2018

Я использую следующий код для копирования базы данных из активов

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");
           }
    }

}

В приведенном выше коде он не работал в Android P, если я даю this.close () .Мне не удалось создать и запросить базу данных.Но в предыдущих версиях все работало нормально.Я знаю, что хорошей практикой является закрытие объектов базы данных после их использования.Но в чем причина такого поведения в Android Pie?

Чтобы узнать эту проблему в Pie, я сослался на эту ссылку, но не смог найти объяснение.

Android P - «SQLite: No Such Table Error» после копирования базы данных изактивы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...