寫在前面
這是最近一些朋友問我的問題,我把它整理成了一個庫,供大家享用,GitHub 地址:https://github.com/nanchen2251/AppManager
從四個應(yīng)用場景說起
退出應(yīng)用
相信各位朋友或多或少都會有遇到過需要在某個特定的地方退出應(yīng)用的需求,這個場景一定非常普遍。崩潰后重啟
程序總是無法做到盡善盡美,有時候你也不知道因為什么原因?qū)е铝?APP 的崩潰,這無疑是非常糟糕的用戶體驗。這時候我們可以采用重啟機制來增強用戶舒適體驗感。莫名其妙重啟
然而心細(xì)的小伙伴肯定會發(fā)現(xiàn),在部分手機上會出現(xiàn)莫名其妙的崩潰后重啟(后面會講原因),而且最要命的是,假設(shè)你有三個 Activity,他們分別是 Act1, Act2, Act3,它們的啟動順序是 Act1 -> Act2 -> Act3,而如果在 Act3 發(fā)生了崩潰,這時候極有可能應(yīng)用重啟后進(jìn)入的是 Act2,而 Act2 中需要某個來源于 Act1 (或者在 Act1 中通過接口獲取) 的參數(shù),當(dāng)沒有這個參數(shù)的時候會引發(fā)崩潰(或者數(shù)據(jù)不全)。這時候你可能最直觀的想法就是禁止應(yīng)用重啟,但或許這并不是最佳的方式。崩潰時彈出一個對話框
在部分手機上,當(dāng)崩潰的時候,會彈出一個提示對話框。在這種情況下,用戶只有點擊 “強行關(guān)閉” 來結(jié)束程序。當(dāng)該對話框出現(xiàn),對用戶來說是相當(dāng)不友好的?;蛟S我們可以通過某種方式攔截掉系統(tǒng)的處理,讓應(yīng)用出錯時不再顯示它。
退出應(yīng)用的幾種方式
Andorid 退出應(yīng)用的方式很多,常見的也就下面四種。
System.exit(0) 使用系統(tǒng)的方法,強制退出
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26