每次我的應用程序關閉時,我都希望做一些簡單的操作 - 我只想減少int變量。怎麼做?每當應用程序關閉時都會執行某些操作
回答
由於@Ozair正確地詢問,它取決於您定義的內容爲closing of app
。
你可以根據不同的需要以下的一種或兩種:
如果你想使用後退按鈕來檢測應用程序關閉,然後從你的最後一次活動中,你可以檢測通過覆蓋onBackPressed函數按BACK按鈕。在那裏你可以減少你的價值。
如果您還在考慮按下HOME按鈕進入背景時的情況,那麼在您的活動中,您將必須檢測到HOME按鈕被按下。有很多解決方案,沒有更多的工作來檢測HOME按鈕,但this回答How can I detect user pressing HOME key in my activity?問題似乎爲我工作。 因此,您可以檢測HOME按鈕並減少您可以在
SharedPreferece
中保存的值。
可以有其他情況下,你打電話給finish()
並關閉你最後的活動。你的問題還不清楚你是否也在考慮這個案例。
希望這給你一些機會來思考它。
我想把關閉應用程序定義爲正在處理它的進程。我的目標是每次應用程序運行時下載文件 - 在我的情況下,當應用程序未處於活動狀態時,無法下載大文件。 –
再次通過殺死你是指'強制停止'還是被操作系統殺死?或者你的意思是應用程序正在被用戶關閉。 –
嗯,我會對每一種情況感興趣,但主要是當用戶關閉應用程序時的情況 –
問題是你的意思是什麼「關閉」?
如果關閉所有活動,則應用程序進程可能仍在運行。如果你的意思是「關閉」只是關閉你所有的活動。您可以爲所有打開的活動定義一個「計數」,您可以將其存儲在數據庫或SharePerference中。我認爲你可以做如下(假的碼):
在你的項目,你應該定義BasicActivity:
public class BasicActivity extends Activity {
onCreate() {
mPreference.incActivityCount();//++
super.onCreate();
}
onDestory() {
mPreference.decActivityCount();//--
if(mPreference.getActivity() == 0) {
//All being opened Activities have been closed.
onAppHasNoUIs();
}
super.onDestory();
}
onAppHasNoUIs() {
//All being opened Activities have been closed.
}
}
- 1. xsl:template中的循環槽paramteres每當有空時都會執行某些操作
- 2. 在應用程序啓動時執行某些操作?
- 3. 在JFrame上單擊關閉按鈕時執行某些操作
- 4. 如何在Javafx關閉時執行某些操作?
- 5. FORM1在FORM2關閉時執行某些操作
- 6. 讓一個應用程序在某段時間後執行某些操作
- 7. 用戶在iOS上關閉應用程序後執行操作
- 8. 當音樂在其他應用程序中播放時,在應用程序中執行某些操作
- 9. 執行應用程序關閉執行程序應用程序
- 10. 數據庫每次執行應用程序時都會更新
- 11. 在Rails應用程序上執行操作關閉
- 12. 當互操作詞退出時關閉winform應用程序
- 13. 當用戶中止連接時執行某些操作(Sinatra + Thin)
- 14. 如何在我的Android應用程序啓動時執行某些操作
- 15. 當主應用程序關閉時關閉child nativeWindows(通過操作系統)
- 16. 當應用程序關閉時執行Applescript
- 17. 當某個時間到來時執行一些操作
- 18. 如何在ASP會話超時時執行某些操作?
- 19. 如何安排我的Android應用程序每小時執行一些操作
- 20. 當應用程序關閉時,Reciver不會工作
- 21. Eclipse插件:如何在打開或關閉文件時執行某些操作
- 22. 當Android應用程序強行關閉時會發生什麼
- 23. Firefox插件每次用戶點擊時都會執行某些操作在地址欄中輸入
- 24. Firefox擴展:當用戶關閉瀏覽器時執行操作
- 25. 定義程序執行某些操作的通用鍵綁定
- 26. 關閉JFrame時執行操作
- 27. 在關閉NodeJS時執行操作
- 28. Nodejs讀取某些進程的stdout並執行某些操作
- 29. Android:使用線程在指定時間執行某些操作
- 30. 當通知欄被選中時執行某些操作
通過關閉,你的意思是進入後臺時,或者被強制退出? –