Как получить контекст приложения после принудительного закрытия

#android

#Android

Вопрос:

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

OrmLiteSqliteOpenHelper lDatabaseHelper = OpenHelperManager.getHelper(context.getApplicationContext());

В обычных случаях это нормально.

Предположим, если я принудительно остановлю свое приложение вручную из настроек-

приложение-> manageapplication. если какое-либо сообщение c2dm появилось после того, как я не смог создать объект OrmLiteSqliteOpenHelper. кажется, что контекст приложения становится нулевым.

Исключение : java.lang.Исключение IllegalStateException: не удалось найти OpenHelperClass, поскольку ни один из его общих параметров не расширяет OrmLiteSqliteOpenHelper: null

Как мне получить контекст приложения после принудительной остановки приложения.

я перепробовал все случаи: context.getApplicationContext() , context, this .

Пожалуйста, помогите мне.

Ответ №1:

Это может решить вашу проблему, если вы явно укажете ORMLite имя вашего класса databasehelper.

Для этого откройте res/values/strings.xml , и добавить

 <string name="open_helper_classname">your.full.package.name.DatabaseHelper</string>
  

( http://ormlite.com/docs/android пункт 5)

Ответ №2:

заставьте приложение сделать снимок его текущего состояния перед закрытием и перезагрузите снимок при загрузке. Вы даже можете настроить диалоговое окно, чтобы выбрать, чтобы не открывать снимок.

-Панда

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

1. Спасибо, панда, я новичок в Android, можете ли вы рассказать, как это сделать. или пример кода может быть полезен.