如何防止在關閉屏幕時重新創建活動?防止在關閉屏幕時重新創建Android活動
我做什麼
- 開始Bejewels並轉到珠寶屏幕。
- 很快按下電源按鈕。屏幕關閉,但設備沒有。
- 再次按下電源按鈕。
我看到
在同一屏幕什麼的轉動屏幕關閉之前。
在我的應用程序(小事一樁,只是一個web應用程序與單一的WebView)方案的情況如下:
我做什麼
- 開始我應用程序。活動onCreate()方法將一個URL加載到WebView中。
- 很快按下電源按鈕。屏幕關閉,但設備沒有。
- 再次按下電源按鈕。
我看到
什麼的WebView被重新加載頁面。
我預計
如Bejewels情況下,我希望看到同樣的畫面,這對於我的應用程序在其先前的狀態頁面:腳本運行,表單字段 填充等
調試表明,我錯了(在前面的問題)和onDestroy()和onCreate()被稱爲一個接一個,當屏幕剛剛打開。由於我仍然聽到腳本播放的音樂,當屏幕關閉時,看起來活動和WebView都存在,直到我再次按下電源按鈕。
我試過了。
- android:alwaysRetainTaskState =「true」同樣的行爲。
- 閱讀有關意圖(無濟於事,我只是不明白,它們如何適用於我的情況)。
- 使用PhoneGap。它的行爲不同:只要按下電源按鈕就可以殺死整個應用程序。這是更好的,但不是最好的。
沒有任何更改。 (我沒有刪除android:alwaysRetainTaskState =「true」)。 – noober
按下電源按鈕屏幕關閉,然後再次屏幕onResume()被調用,你在做什麼onResume()? – Bush
1.是,調用onResume()。我已經檢查了它(重寫並稱爲吐司)。 2.對不起,我只是沒有想到我必須在onResume()中做些什麼。所以,它沒有被覆蓋,現在它只包含Toast調用。 3.現在的行爲如下:第一次按下按鈕後,當屏幕關閉時,頁面在後臺重新加載(音樂停止播放,然後從開始播放,在啓動音樂的網頁的加載區中有一個JavaScript播放)。 – noober