SQLiteOpenHelper, когда вызывается onCreate - PullRequest
1 голос
/ 07 июня 2010

Я играю с Android SDK, чтобы написать простое приложение для друзей (и, возможно, для продажи).

Это приложение будет искать в базе данных ключевые слова и отображать результаты на экране. Я посмотрел на поисковый справочник и демонстрационные приложения блокнота, но я все еще немного неуверен.

Я знаю, что мне нужно написать класс, расширяющий SQLiteOpenHelper, и использовать его для создания базы данных, однако как мне проверить, существует ли база данных?

OnCreate вызывается при установке или каждый раз, когда создается экземпляр класса? это самый простой способ - просто пытаться добавлять базу данных каждый раз и выявлять любые ошибки (кажется немного опасным делать предположение, что каждая ошибка будет связана с уже существующей базой данных).

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 07 июня 2010

Ваш SQLiteOpenHelper будет обрабатывать создание базы данных. Как только БД будет создан на телефоне пользователя, SQliteHelper будет счастлив, пока вы не измените номер версии базы данных.

Пока вы помещаете свой код создания БД в метод onCreate объекта SQLiteOpenHelper, у вас все будет хорошо.

Посмотрите на метод onUpgrade из демонстрации Notepad, так как вам нужно написать некоторый код, который обрабатывает то, что происходит, когда ваша БД пытается обновить себя (она сделает это, когда вы измените номер версии БД)

0 голосов
/ 05 февраля 2015

Каждый раз, когда вы вызываете helper.getWritableDatabase (), вызывается метод onCreate.

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