Я пытаюсь понять разницу между onPause и onStop.
Я читал все разные форумы, но я до сих пор не совсем понимаю эту разницу. Я создал простое приложение, чтобы попробовать и проверить, когда вызывается этот метод. Для этого я просто разместил регистраторы в каждом методе.
Из моих испытаний -
- Всплывающие окна не вызывают метод
- Переключение на другую активность вызывает оба метода.
- Отключение панели уведомлений не вызывает ни метода
Я видел только то, что оба метода вызываются в быстрой последовательности или вообще не вызываются. Я пытаюсь найти сценарии, где onPause вызывается, но onStop этого не делает.
Цель состоит в том, чтобы понять, требуется ли определение onPause. Если сценарии, в которых вызывается только onPause, являются настолько редкими, даже нет смысла писать отдельный код для onPause. Не нужно ли писать onStop?
public class LifecycleActivity extends ActionBarActivity {
@Override
protected void onDestroy() {
super.onDestroy();
Log.d("Rachit", "In Destroy Method");
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lifecycle);
Log.d("Rachit", "In Create Method");
}
@Override
protected void onStart() {
super.onStart();
Log.d("Rachit", "In Start Method");
}
@Override
protected void onResume() {
super.onResume();
Log.d("Rachit", "In Resume Method");
}
@Override
protected void onPause() {
super.onPause();
Log.d("Rachit", "In Pause Method");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d("Rachit", "In Restart Method");
}
@Override
protected void onStop() {
super.onStop();
Log.d("Rachit", "In Stop Method");
}
}