繁体   English   中英

flurry分析如何跟踪我的应用版本号?

[英]How does flurry analytics track my apps version number?

我正在为我的应用程序查看我最常用的版本号。 看来flurry正在我的plist中使用内部版本号字段(包版本)来报告特定应用程序的版本。 这是真的? 如果是这样,我可以在我的plist中使用不同的字段吗? (即Bundle Version string short)怎么样? 我经常更改内部版本号,我希望看到像1.0.1(一个版本)而不是28(一个内部版本号)的东西。

我对此也有所了解,对我来说似乎很奇怪他们会默认使用内部版本号。 我添加了一个自动递增的内部版本号脚本,当我下次检查Flurry时,它显示了大约100个不同的“版本”,每个只是一个新版本。 呃,真是一团糟。

好消息是Flurry API提供了一种在运行时显式设置报告的应用版本的方法。 我的前缀文件中有#define链接到“短版本字符串”,在Apple的系统中基本上是面向用户的应用程序版本(例如“1.0.2”),可能是您想要跟踪的那个在乱舞。

#define kAppVersion [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"]

这样做意味着您不必记住在多个位置设置版本。 将其设置在目标的“身份”部分或Info.plist文件中,您就完成了。

然后在我的app delegate的应用程序:didFinishLaunchingWithOptions:方法,当我启动Flurry集合时,我告诉它使用它。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    [Flurry setCrashReportingEnabled:YES];
    [Flurry setAppVersion:kAppVersion]; // <-- will now report your short version string
    [Flurry startSession:kFlurryAPIKey];
    // ...
}

不推荐使用上述方法,而不是以下用户。

    if let version = Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String {
        Flurry.startSession("xxxxxxxxxxxxxxxxxxx", with: FlurrySessionBuilder
            .init()
            .withCrashReporting(true)
            .withLogLevel(FlurryLogLevelAll).withAppVersion(version))
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM