我不明白為什么.。在我看來偶爾重新開始是可以的.。configChanges幫我處理大部分案件.。嗯,也許在某些類型的應用程序中,這可能是個問題,但這取決于應用程序的類型以及在應用程序重新啟動時如何恢復狀態.當我的應用程序重新啟動時,用戶被重新登錄,最后一次活動由我的代碼打開,用戶jus失去了一些返回的步驟,但沒什么大不了的。在另一些情況下,一些狀態總是持久化的,而一些狀態總是在重啟時被恢復。當活動重新啟動時,必須是應用程序沒有被使用或者什么的.所以根本沒問題.。例如,在游戲中,這可能是個問題,也可能是其他類型的應用程序中的問題,我不知道.
我說,當您這樣做時,應用程序在正常情況下工作正常。代碼的可讀性要高得多,而不需要大量的邏輯來保存和恢復,這樣你就可以制造新的bug,并且必須一直維護它…當然,如果Android失去了功能并殺死了您的應用程序窗口,它就會失去上下文并重新啟動,但這種情況只是在特殊情況下才會發生,而在較新的設備上,我相信這是越來越罕見的。
所以殺了我,但我很成功地在應用程序中使用了這個.android:configChanges=“locale|keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize”,但我知道,對于某些特殊類型的應用程序來說,這可能不是一個好方法,但大多數應用程序都可以接受這一點。