Сценарий:
У меня четыре действия в приложении для Android, давайте скажем A, B, C и D. В приложении есть один класс Constants.java, который расширяет класс Application, чтобы поддерживать состояние глобального приложения. Класс Constants имеет все постоянные переменные приложения. Поток активности подобен этому A-->B-->C-->D. Когда нажимается кнопка "Назад" из Activity A, я вызываю метод finish(), который завершит действие A и закроет приложение. После этого, если я открываю приложение из всех приложений, в Constants.java есть переменная, значение которой сохраняется от последнего запуска. То же самое не происходит, когда я делаю System.exit(10), а затем Process.killProcess(Process.myPid()) из действия A (нажимается назад).
Вопросы:
- Будет ли завершение всех действий вызовом finish() каждого действия закроет приложение (его процесс)?
- Как значение переменной сохраняется, даже если все действия завершены (закрыты)?
- Можно ли позвонить
System.exit(10), а затемProcess.killProcess(Process.myPid())для выхода из приложения?
Update:
Как я могу очистить константы приложения при выходе из приложения (Back press of HomeActivity)?