从家庭/桌面检测应用程序启动的可靠方法?

时间:2012-08-22 11:31:31

标签: android

我希望每次用户打开应用时都会检测到,点击主页/桌面图标。似乎没有直接的方法来做到这一点。找到了一些解决方法,但似乎没什么可靠的。

类似的事情,扩展应用程序对象和使用方法“onCreate()”,但这不是我需要的,因为当用户点击应用程序的图标时它不会被调用(可以只是从后台启动,启动没有'必须重新创建应用程序),并且还可以在运行时销毁和重新创建应用程序。然后也会调用Application.onCreate()。

还有一些涉及BroadcastReceiver并检查意图标志的方法但是一切似乎也不太可靠?

我需要这个,因为我想在用户打开应用时跟踪Google Analytics。

由于

2 个答案:

答案 0 :(得分:0)

尝试研究“android应用程序生命周期”。

但每次开始活动时都会启动onResume

其他尝试:onStart每次将您的应用程序发送到“后台”时都会调用它。它确实在开发人员docs中说明了这一点。

答案 1 :(得分:0)

每当您的应用程序以正常方式启动时[如果用户点击主启动器上的图标]则主要活动

<activity android:name=".xyz" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>

已定义,在此应用程序中肯定会调用 onCreate 方法。所以,您可以在这里为Google Analaytics提供跟踪代码。

在其他方面,如广播接收器,它实际上取决于调用哪个活动以及它是否是应用程序的开始。您也可以使用 onReceive 方法

就我个人而言,Android已经确定了启动应用程序的方式,而且它始终可靠。只有Android的生命周期有点棘手。

相关问题