Скорее всего, ваша проблема в том, что вы изменили структуру / схему базы данных, возможно, добавив столбец с момента запуска приложения.
Обычно при запуске приложения вы получаете исключение SQLite, указывающее, что столбец не найден. Однако, поскольку вы обернули addData в конструкцию try / finally, исключение было подавлено, поэтому кажется, что все в порядке, поскольку приложение не падает или ничего не показывает в журнале.
Заключение кода базы данных в конструкции try и ошибки перехвата, как вы обнаружили, может сбивать с толку, и рекомендуется, чтобы вы этого не делали.
Причина, по которой изменение схемы / структуры в коде для метода onCreate (вероятная основная причина проблемы) заключается в том, что метод onCreate ТОЛЬКО запускается только при база данных создана.
Если схема / структура базы данных изменена, то вам нужен какой-либо способ принудительного изменения структуры или при разработке приложения, поскольку не нужно сохранять базовые данные, тогда самый простой способ - удалить базы данных, а затем снова запустите приложение.
Базу данных можно удалить, удалив данные приложения или удалив приложение (учитывая, что все существующие данные будут потеряны).
Альтернативой является УДАЛЕНИЕ соответствующих таблиц и воссоздание их. Для этого часто пишется метод onUpgrade . Если это так (то есть в вашем случае), то другим способом изменения структуры является запуск метода onUpgrage путем увеличения передачи номера версии в конструктор SQLiteOpenHelper (супер вызов). В вашем случае вы можете изменить super(context, TABLE_NAME, null, 1);
на super(context, TABLE_NAME, null, 2);
После удаления базы данных или увеличения номера версии (предпочтительно удаления конструкции try / finally со стороны вызова до addData ) и перезапуска приложения, оно может просто работать. Если нет, то в журнале должны быть указаны все исключения, и проблемы могут быть точно определены.