我想要檢測每次用戶打開應用程序,通過點擊家庭/桌面圖標。似乎沒有一個簡單的方法來做到這一點。找到了一些解決方法,但似乎沒有什麼可靠的。檢測家庭/桌面應用程序啓動的可靠方法?
這樣的事情,擴展應用程序對象和使用方法「onCreate()」,但這不是我需要的,因爲它不會總是在用戶點擊應用程序的圖標時調用(可以從後臺啓動,不一定會重新創建應用程序),並且該應用程序在運行時可能會被銷燬和重新創建。然後Application.onCreate()也會被調用。
還有一些涉及BroadcastReceiver和檢查意向標誌的方法,但一切似乎也不太可靠?
我需要這個,因爲我想跟蹤谷歌分析,當用戶打開應用程序。
謝謝
那麼,我知道生命週期,每次啓動應用程序時都無法檢測到。每當一個活動開始時,就會調用你所說的「onResume」,並且當應用程序的前景中的東西消失時等等,所以它不適合。 – Ixx
好吧,你不能兩種方式,最近的事情是onStart然後。這是一條中間路線。看看我發佈給@Zoombie的鏈接回答 –
當應用程序內部明確調用活動時,或者在銷燬後重新創建活動時,也會調用onStart,並且如您所說,當應用程序位於後臺/後面時一些其他活動。當其他活動關閉時,應用程序再次變爲可見(沒有用戶明確啓動它),則調用onStart()。 – Ixx