Aktywność Androida onDestroy () nie zawsze jest wywoływana i jeśli wywoływana jest tylko część kodu, jest wykonywana

onDestroy () nie zawsze jest nazywany. Jeśli zostanie wywołany, wykonywana jest tylko część kodu.
I przez większość czasu w LogCat widzę tylko komunikat „stan GPS na zniszczeniu nazywany pierwszym”. Dlaczego?

protected void onDestroy(){
    super.onDestroy();
    Log.d("on destroy called", "gps state on destroy called first");

    editor.putBoolean("gpsOn", false);
    Log.d("on destroy called", "gps state on destroy called second");
    editor.commit();

    Log.d("on destroy called", "gps state on destroy called third");
    stopRouteTracking();
    Log.d("on destroy called", "gps state on destroy called  fourth");      





}

questionAnswers(3)

yourAnswerToTheQuestion