【Unity3D】鎖屏、解鎖相關函數回調


由安卓生命周期啟發

1.啟動Activity:系統會先調用onCreate方法,然后調用onStart方法,最后調用onResume,Activity進入運行狀態。
2.當前Activity被其他Activity覆蓋其上或被鎖屏:系統會調用onPause方法,暫停當前Activity的執行。
3.當前Activity由被覆蓋狀態回到前台或解鎖屏:系統會調用onResume方法,再次進入運行狀態。
4.當前Activity轉到新的Activity界面或按Home鍵回到主屏,自身退居后台:系統會先調用onPause方法,然后調用onStop方法,進入停滯狀態。
5.用戶后退回到此Activity:系統會先調用onRestart方法,然后調用onStart方法,最后調用onResume方法,再次進入運行狀態。
6.當前Activity處於被覆蓋狀態或者后台不可見狀態,即第2步和第4步,系統內存不足,殺死當前Activity,而后用戶退回當前Activity:再次調用onCreate方法、onStart方法、onResume方法,進入運行狀態。
7.用戶退出當前Activity:系統先調用onPause方法,然后調用onStop方法,最后調用onDestory方法,結束當前Activity。
 
問題:當Unity被鎖屏時執行哪個函數?當Unity解鎖屏幕時執行哪個函數?被其他應用覆蓋,或者退到后台,調用哪個函數?從后台回來,調用哪個函數?
正常進:
OnApplicationFocus, isFocus=True
正常退:
OnApplicationQuit
Home出:
OnApplicationPause, isPause=True
OnApplicationFocus, isFocus=False
Home進:
OnApplicationPause, isPause=False
OnApplicationFocus, _isFocus=True
Kill進程:
當前應用雙擊Home,然后Kill:
OnApplicationQuit (IOS 有回調,android 沒回調)
跳出當前應用,然后Kill:
OnApplicationQuit (IOS和Android都沒回調)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM