2016-03-29 2 views
1

У меня есть приложение для Android, которое на самом деле является системой внутреннего позиционирования, используя базу данных SQLite. Когда пользователь открывает приложение, он должен сначала его откалибровать. То есть, позиция сканирования в месте проведения, а затем записи приложения rssi x, y значения в базе данных sqlite THEN, он показывает позицию пользователя. Однако, когда я выхожу из приложения и снова открываю его, мне нужно пройти весь процесс калибровки.Данные удалены после выхода приложения

Данные удаляются из базы данных, что заставляет пользователя перекалибровать ее каждый раз, когда он запускает приложение. Кто-нибудь может помочь мне предотвратить удаление записей, пожалуйста? Спасибо.

ответ

0

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

Эта ссылка должна помочь объяснить жизненный цикл деятельности:

http://developer.android.com/training/basics/activity-lifecycle/index.html

http://developer.android.com/training/basics/activity-lifecycle/stopping.html

0

Вам необходимо переопределить метод Метод onSavedInstanceState().

См. this question, где это описано подробно.

Смежные вопросы