我想要检测每次用户打开应用程序,通过点击家庭/桌面图标。似乎没有一个简单的方法来做到这一点。找到了一些解决方法,但似乎没有什么可靠的。检测家庭/桌面应用程序启动的可靠方法?
这样的事情,扩展应用程序对象和使用方法“onCreate()”,但这不是我需要的,因为它不会总是在用户点击应用程序的图标时调用(可以从后台启动,不一定会重新创建应用程序),并且该应用程序在运行时可能会被销毁和重新创建。然后Application.onCreate()也会被调用。
还有一些涉及BroadcastReceiver和检查意向标志的方法,但一切似乎也不太可靠?
我需要这个,因为我想跟踪谷歌分析,当用户打开应用程序。
谢谢
那么,我知道生命周期,每次启动应用程序时都无法检测到。每当一个活动开始时,就会调用你所说的“onResume”,并且当应用程序的前景中的东西消失时等等,所以它不适合。 – Ixx
好吧,你不能两种方式,最近的事情是onStart然后。这是一条中间路线。看看我发布给@Zoombie的链接回答 –
当应用程序内部明确调用活动时,或者在销毁后重新创建活动时,也会调用onStart,并且如您所说,当应用程序位于后台/后面时一些其他活动。当其他活动关闭时,应用程序再次变为可见(没有用户明确启动它),则调用onStart()。 – Ixx