Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
ILNAR_93
Android
217 / 217 / 21
Регистрация: 19.01.2013
Сообщений: 1,637
Записей в блоге: 3
#1

Время жизни переменной в Application - Android

18.03.2016, 14:12. Просмотров 190. Ответов 6
Метки нет (Все метки)

В Классе Application до какого времени живет переменная?

Наблюдаю следующее: создаю класс наследник Application, там есть переменная int i = -1, записываю туда данные (например 2).

Сворачиваю приложение, далее обратно к нему возвращаюсь и вижу что:

Случай 1: Все нормально, все данные в классе сохранились (активность жива, т.е. система ее не выгрузила (открывается тот фрагмент который был в момент сворачивания)) int i = 2;
Случай 2: После длительного "перерыва" возвращаюсь в приложение и вижу что в классе все данные обнулились, моя переменная int равна стандартному -1 (активность жива, т.е. система ее не выгрузила (открывается тот фрагмент который был в момент сворачивания))

Что такое? Чего я не знаю?))


p.s. класс наследник и переменная не static
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Паблито
2236 / 1809 / 563
Регистрация: 12.05.2014
Сообщений: 6,448
Завершенные тесты: 1
18.03.2016, 14:48     Время жизни переменной в Application #2
этот класс в манифесте прописан?
XML
1
2
<application
        android:name=".Application"
ILNAR_93
Android
217 / 217 / 21
Регистрация: 19.01.2013
Сообщений: 1,637
Записей в блоге: 3
18.03.2016, 20:36  [ТС]     Время жизни переменной в Application #3
Паблито, да, все прописано..

XML
1
2
3
4
5
6
<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme"
        android:name=".MyApplication">
MyApplication - название наследника
Alexvp
107 / 71 / 8
Регистрация: 03.08.2014
Сообщений: 344
18.03.2016, 21:13     Время жизни переменной в Application #4
Сохраняйте в методе onStop, например, в Preferences, и восстанавливайте в методе onStart
У меня была проблема, похожая на вашу. Решил таким способом.
ILNAR_93
Android
217 / 217 / 21
Регистрация: 19.01.2013
Сообщений: 1,637
Записей в блоге: 3
18.03.2016, 23:08  [ТС]     Время жизни переменной в Application #5
Цитата Сообщение от Alexvp Посмотреть сообщение
Сохраняйте в методе onStop, например, в Preferences, и восстанавливайте в методе onStart
Не ответ конечно на вопрос
Alexvp
107 / 71 / 8
Регистрация: 03.08.2014
Сообщений: 344
18.03.2016, 23:35     Время жизни переменной в Application #6
Увы, точную причину назвать не могу. Предположение - мусорщиком затирается часть памяти. Делал эксперименты, после сворачивания запущенного приложения начинал вызывать другие, требующие больших ресурсов. затирание шло уже после 3-4 других приложений. Но, думаю, тут многое зависит от модели гаджета, размера доступной оперативной памяти.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.03.2016, 10:36     Время жизни переменной в Application
Еще ссылки по теме:

Что такое Application Android
Android Пытаюсь добавить в проект application, но выходит ошибка
The application is incorrectly configured Android
The application may be doing too much work on its main thread Android
Android Переменные класса Application

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Valakin
430 / 96 / 15
Регистрация: 21.02.2015
Сообщений: 729
19.03.2016, 10:36     Время жизни переменной в Application #7
Добавить логи в онкриейт и онломемори, онконфигчейнж
и узнать причину надо
Yandex
Объявления
19.03.2016, 10:36     Время жизни переменной в Application
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru