Я могу предложить две книги, но я также хотел бы предложить настоящий эмпирический тест, который вы должны попробовать.
Чтобы ответить на ваш оригинальный вопрос:
Commonsware - хороший источник, и у Марка Мерфи есть значок на переполнение стека.
Руководство по разработке Android для занятых программистов, от Commonsware.com
У меня был хороший пробег на страницах 8 и 9 этой книги от О'Рейли. Я обнаружил, что для полного понимания жизненного цикла Android мне нужно было прочитать эти страницы как минимум 10 раз.
Разработка приложений для Android, ISBN 978-0596521479
Предложение для эмпирического тестирования
жизненного цикла активности Android
Создайте андроид-активность или пример приложения и регистрируйте каждый раз, когда вводится один из методов жизненного цикла Android. Как в этом примере.
Добавьте эти записи журналов в свою деятельность, а затем создайте ее. Запустите его на устройстве или на эмуляторе с запущенным adb logcat
. Затем сделайте несколько экспериментов. Посмотрите, что происходит, когда вы блокируете экран,
нажмите дом, нажмите «меню» и т. д. Этот метод поможет вам понять, чем просто чтение. Вам все еще нужно будет прочитать и изучить жизненный цикл действия, но это поможет совсем немного.
public class YourActivity
{
private static final String LOG_TAG = "YourActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
Log.d(LOG_TAG, "onCreate()");
super.onCreate(savedInstanceState);
}
@Override
public void onStart()
{
Log.d(LOG_TAG, "onStart()");
super.onStart();
}
@Override
public void onStop()
{
Log.d(LOG_TAG, "onStop()");
super.onStop();
}
@Override
protected void onDestroy() {
Log.d(LOG_TAG, "onDestroy()");
super.onDestroy();
}
@Override
protected void onPause() {
Log.d(LOG_TAG, "onPause()");
super.onPause();
}
@Override
protected void onResume() {
Log.d(LOG_TAG, "onResume()");
super.onResume();
}
}