Страницы

Поиск по вопросам

пятница, 24 мая 2019 г.

Нужно ли проверять SQLiteDatabase db на null?

В своем андроид-приложении ни разу не проверял 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 :)
Так что проверять надо все таки.

Комментариев нет:

Отправить комментарий