1

我想通过点击主页/桌面图标来检测用户每次打开应用程序的时间。似乎没有直接的方法来做到这一点。找到了一些解决方法,但似乎没有什么是真正可靠的。

诸如扩展应用程序对象并使用方法“onCreate()”,但这不是我需要的,因为当用户点击应用程序的图标时并不总是调用它(可以只是从后台带来,启动不一定重新创建应用程序),并且应用程序可能在运行时被销毁和重新创建。然后 Application.onCreate() 也将被调用。

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

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

谢谢

4

2 回答 2

0

尝试查看“android 应用程序生命周期”。

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

Else try :onStart每次您的应用程序被发送到“后台”时都会调用它。在开发人员文档中确实如此说明。

于 2012-08-22T11:50:12.853 回答
0

每当您的应用程序以正常方式启动时[如果用户点击主页启动器上的图标],那么主 Activity

<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 的生命周期有点棘手。

于 2012-08-22T11:50:53.113 回答