如果按照設置 - >應用程序 - >管理應用程序 - > - >強制停止的步驟強制停止應用程序,那麼android是否會調用Activity或Application的onDestroy? (如果沒有,是否有任何方法知道應用程序是否因用戶觸發的強制停止而死亡)。Android強制停止回撥應用程序?
回答
強行停止該應用將殺死的全過程(與Process.killProcess(int pid)
即)。與應用程序相關的所有資源都將被內核刪除並釋放。所以不,沒有辦法阻止這種行爲。
當您在市場上發佈應用程序時,開發人員控制檯將爲您提供有關強制關閉,崩潰等的統計信息(如果這就是您要求的原因)。
謝謝您的回覆。 – Chris
總之,沒有,onDestroy()
不叫,你不能做到這一點。 Android不支持它。
更加延長的答案...
onDestroy()
不會出現在這種情況下被調用。我在調用super.onDestroy之前嘗試使用Toast
來測試這個,但Toast
消息從未出現過。 (根據this post,onDestroy()
真的不可靠,不會經常被調用,如果有的話,在手機上,而它可能會在模擬器上調用 - 所以要注意這一點)。相反,killProcess()
被調用,我們不能攔截。
此外,根據this post接受的答案,看來我們甚至不能趕上和用戶控制的力停止後執行任務。
在大多數情況下,不保證會調用'onDestroy()'。 –
正是。這已經在我的回答中說明了。 – Mxyk
對不起,我不是在暗示你錯了......只是想概括一下答案(「在大多數情況下」)。希望你不介意。 :) –
號這是不是真的有可能。我沒有看到有問題的Android代碼,但我會想象「強制停止」只是在您的應用的進程ID上調用kill
。所以你可以攔截的唯一方法就是如果你可以捕獲信號,我認爲Android不允許。
如果你根植,你可能做到這一點,但不是在任何標準的方式。
在我看來,處理信號的能力將是一個相當大的安全缺陷。 :P –
- 1. 強制停止android應用程序
- 2. android:Alarmmannager強制停止應用程序
- 3. WLST - 強制停止應用程序
- 4. Visual Basic:強制應用程序停止
- 5. 如何以編程方式強制停止應用程序 - Android
- 6. Android-應用程序設置強制停止
- 7. 新的Android應用程序的「強制停止」
- 8. 如何停止從adb的android應用程序沒有強制停止或根?
- 9. Android ADB停止應用程序命令,如非強制停止設備
- 10. 停止Android應用程序
- 11. 如何防止用戶在Android上「強制停止」我的應用程序?
- 12. VSTS回撥uri爲Android應用程序
- 13. 通過設置>應用程序>應用程序>強制停止應用程序「強制停止」時SharedPreferences清除
- 14. 在管理應用程序中禁用強制停止按鈕
- 15. Android應用程序停止響應SQLCipher
- 16. 我的應用程序意外停止並強制關閉
- 17. 選擇選定的ID時,應用程序強制停止
- 18. GenyMotion上的應用程序強制停止
- 19. 應用程序意外停止。強制關閉。該怎麼辦?
- 20. 從應用程序強制停止延遲的工作人員
- 21. 請求權限窗口強制應用程序停止
- 22. Robotium強制停止測試中的應用程序
- 23. 應用程序強制停止。爲什麼?
- 24. 應用程序意外停止強制關閉?
- 25. 停止iAd回撥方式
- 26. 防止強制殺死應用程序
- 27. telephonyManager.listen強制應用程序終止
- 28. (Android)保持服務正常運行,即使應用程序強制停止
- 29. Android Xamarin - 獲取應用程序的通知或保持數據,直到應用程序被強制停止
- 30. android應用程序通知不工作時,應用程序被迫或強制停止在米4i
但是應用程序應用程序保護呢?他們是否使用安全漏洞成爲root?因爲如果你強制停止應用程序,它會再次啓動,不管你如何殺死它,它都會重新開始。 – David