我有一个问题。为了分析目的,我需要跟踪APP(而不是活动)何时恢复。我现在遇到的问题是,如果我将跟踪器放在活动的OnResume事件上,每当用户在不同的活动之间来回切换时,它都会触发。
我该如何避免这种情况?如何跟踪真正的"应用程序恢复"(用户实际退出应用程序并重新进入),而不是活动恢复?
任何想法都非常感谢。谢谢。
我有一个问题。为了分析目的,我需要跟踪APP(而不是活动)何时恢复。我现在遇到的问题是,如果我将跟踪器放在活动的OnResume事件上,每当用户在不同的活动之间来回切换时,它都会触发。
我该如何避免这种情况?如何跟踪真正的"应用程序恢复"(用户实际退出应用程序并重新进入),而不是活动恢复?
任何想法都非常感谢。谢谢。
我遇到了相同的问题,并通过创建基本活动来解决它:
public class mActivity extends Activity{
public static final String TAG = "mActivity";
public static int activities_num = 0;
@Override
protected void onStop() {
super.onStop();
activities_num--;
if(activities_num == 0){
Log.e(TAG,"user not longer in the application");
}
}
@Override
protected void onStart() {
super.onStart();
activities_num++;
}
}
我的应用程序中的所有其他活动都继承了mActivity。当一个活动不再可见时,onStop被调用。当activities_num == 0时,所有活动都不可见(这意味着用户关闭了应用程序或将其传递到后台)。当用户启动应用程序(或从后台重新启动它)时,onStart将被调用(当活动可见时调用onStart),并且activities_num > 0。希望这有所帮助...
不要使用OnResume(),而是将其挂钩到您的主活动的OnCreate()事件中。