6

Flurry 文档建议startSessionapplicationDidFinishLaunching:.

这有两个问题...

- (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
}
4

2 回答 2

2

对于您的情况 1)正确的放置位置[FlurryAnalytics startSession:@"SOMESESSIONKEY"];

application:didFinishLaunchingWithOptions:

你可以把它放在那里而不用担心。我自己完成了这项工作,该应用程序在 appstore 上运行得非常好,并且完美地提供了统计数据。

对于情况2),当应用返回前台时,您的分离将自动恢复,因此您无需在此处进行任何特殊处理。

于 2011-12-16T17:01:52.797 回答
1

我也对这个很好奇。我查看了我的应用程序继承的代码,并没有在 didbecomeactive、前台等中看到任何混乱的活动。我只在 didfinishlaunchingwithoptions 中看到了 startsession。我在flurry网站上看到了以下内容:startsession,但我仍然不明白它是如何工作的,只是在flurry库的幕后工作?@samfisher,你能详细说明一下吗?

“此方法用作 Flurry Analytics 集合的入口点。它必须在 applicationDidFinishLaunching 范围内调用。会话将在应用程序处于前台期间继续,直到您的应用程序在 setSessionContinueSeconds 中指定的时间处于后台:。如果应用程序在此期间恢复会话将继续,否则将开始新会话。”

FlurryApi.h 将 setSessionContinueSeconds 的默认值显示为 10,所以我猜 Flurry 会处理它,我只是在寻找更多确认。

http://support.flurry.com/sdkdocs/iOS/interface_flurry_analytics.html#a78b0b92085b38875d51f1ca0d699849a

于 2012-04-13T20:10:53.570 回答