我在一个用户拥有的应用程序中有一个奇怪的问题,我无法重现。因此,我决定使用Flurry跟踪一些值,因为我已经将它用于分析。
我在里面有一个WakefulBroadcastReceiver
:
@Override
public void onReceive(Context context, Intent intent) {
FlurryAgent.onStartSession(context, "MyReceiver");
Intent service = new Intent(context, MyService.class);
Log.i("WakefulReceiver", "Starting service @ " + SystemClock.elapsedRealtime());
startWakefulService(context, service);
FlurryAgent.onEndSession(context);
}
我可以看到Log.i()
被调用,会话被跟踪(我可以看到Flurry记录一些内容并将其发送到服务器),但是在dev.flurry.com上看不到它(包括任何内容)在此会话中跟踪的事件)。跟踪Activity
相关的其他会话正常。
与从接收者调用的IntentService
相同 - 我在onHandleIntent
开始会话并在那里结束,但它不会出现在Flurry网站上。
我曾尝试删除接收者会话并仅保留服务会话,但仍未显示。接收器/服务的正常运行时间不到一秒,所以我得出结论,Flurry不想跟踪这么短的会话。是这样的吗? Flurry会话持续时间是否有最低值可供跟踪?
顺便说一下,如果我有另一个会话(如Activity
相关会话),也不会跟踪来自接收方/服务会话的事件。
答案 0 :(得分:0)
我已将Flurry SDK更新到6.1.0并且它开始跟踪短会话,问题似乎已修复。