В своем андроид-приложении ни разу не проверял db != null, при этом запросы работают. Прочитал, что надо проверять, к примеру, как в следующем коде.
SQLiteDatabase db = new ContactDbHelper(
getApplicationContext()).getWritableDatabase();
if (db != null) {
Toast.makeText(getApplicationContext(),
"DB Contacts is created", Toast.LENGTH_LONG).show();
}else {
Toast.makeText(getApplicationContext(),
"Error create database!", Toast.LENGTH_LONG).show();
}
Вопрос такой, нужно ли проверять SQLiteDatabase db на null? Это просто подстраховка и если да, по каким причинам БД может не создаться, при условии, что код рабочий?
Ответ
Код открытия БД ищет БД по пути задаваемому методом Context.getDatabasePath(), легко может случиться, что какая-то сволочь однажды решит перегрузить этот метод в своем Activity и указать путь на внешний носитель - тогда вас будет ждать легкий Überraschung :)
Так что проверять надо все таки.
Комментариев нет:
Отправить комментарий