Flurry文档建议将startSession
来电置于applicationDidFinishLaunching:
。
这有两个问题......
- (void)applicationDidFinishLaunching:(UIApplication *)application
{
[FlurryAnalytics startSession:@"AWESOMEAPIKEY"];
// ...
}
1) application:didFinishLaunchingWithOptions:
不是新批准的发布点吗?
2)这只在启动时调用一次,但是每次用户打开或切换回应用时我们都不想要会话信息吗?或者Flurry通过收听某些事件或NSNotification
?
将startSession
电话放在applicationDidBecomeActive:
或applicationWillEnterForeground:
中是不是更好的地方,如此?
- (void)applicationDidEnterBackground:(UIApplication *)application
{
// ... Flurry AppCircle setup
[FlurryAnalytics startSession:@"AWESOMEAPIKEY"];
// ... your setup
}
答案 0 :(得分:2)
为您的情况1)
正确放置[FlurryAnalytics startSession:@"SOMESESSIONKEY"];
的地方是
application:didFinishLaunchingWithOptions:
你可以毫无后顾之忧地放在那里。我自己做了这个,应用程序在appstore工作非常棒,并提供完美的统计数据。
对于案例2),当应用程序返回前台时,您的分离将自动恢复,因此您不必在此处进行任何特殊处理。
答案 1 :(得分:1)
我对此也很好奇。我查看了我的应用程序的继承代码,并没有看到任何关于didbecomeactive,前景等的乱七八糟的活动。我只看到了didfinishlaunchingwithoptions的startsession。我在flurry网站上看到了下面的内容:startsession,但是我仍然不知道它是如何工作的,只是幕后花絮图书馆的幕后工作? @samfisher,你能详细说明吗?
“此方法充当Flurry Analytics集合的入口点。必须在applicationDidFinishLaunching范围内调用。会话将在应用程序处于前台的期间内继续,直到您的应用程序在setSessionContinueSeconds中指定的时间内进行后台处理:。如果应用程序在该时间段内恢复,则会话将继续,否则将开始新的会话。“
FlurryApi.h显示setSessionContinueSeconds的默认值为10,所以我猜Flurry处理它,我只是想找到更多的确认。