gpt4 book ai didi

ios - 适用于 IOS 的谷歌分析 SDK 不再跟踪屏幕或事件。曾经工作

转载 作者:行者123 更新时间:2023-11-29 12:22:54 24 4
gpt4 key购买 nike

几个月前,我下载了适用于 IOS 的最新版本的 Google Analytics SDK,以尝试对我的应用程序进行跟踪分析。我按照所有说明进行操作,下载了 SDK,删除了代码,创建了谷歌分析帐户和相应的属性及其各自的报告 View ,插入了跟踪代码,一切都很好。 (这是我正在做的事情,还没有准备好投入生产,所以我们没有让它上线)。

我把它搁置了几个月,然后最近又恢复了我编写的代码,出于某种原因,谷歌分析似乎不再跟踪我所在的屏幕,也不再跟踪我所发生的事件跟踪。

我打开了详细日志记录,这是我现在从控制台获得的所有信息。每次我将有关屏幕 View 或事件的数据发送到 Google Analytics 时,我都会获得很多信息。

Google 分析控制台输出:


VERBOSE: GoogleAnalytics 3.11 +[GAITrackerModel initialize] (GAITrackerModel.m:88): idfa class missing, won't collect idfa

我不认为此错误消息无关紧要,因为我没有在我的应用中展示任何广告


INFO: GoogleAnalytics 3.11 -[GAIReachabilityChecker reachabilityFlagsChanged:] (GAIReachabilityChecker.m:159): Reachability flags update: 0X000002

我相信这个状态代码表明我能够访问谷歌分析


INFO: GoogleAnalytics 3.11 -[GAIBatchingDispatcher hitsForDispatch] (GAIBatchingDispatcher.m:368): No pending hits.

不太确定这是什么意思,但在显示此消息后,每当我尝试向其发送屏幕数据或事件数据时,我都不会再从 Google Analytics 获得任何反馈


这是我在应用委托(delegate)类中的代码:

// setup google analytics

// Optional: automatically send uncaught exceptions to Google Analytics.

[GAI sharedInstance].trackUncaughtExceptions = YES;

// Optional: set Google Analytics dispatch interval to e.g. 20 seconds.
[GAI sharedInstance].dispatchInterval = 20;
[[GAI sharedInstance] setDryRun:NO];

// Optional: set Logger to VERBOSE for debug information.
[[[GAI sharedInstance] logger] setLogLevel:kGAILogLevelVerbose];

// Initialize tracker. Replace with your tracking ID.
[[GAI sharedInstance] trackerWithTrackingId:@"mytrackingIDgoeshere"];

id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker];

tracker.allowIDFACollection = NO;

NSString *version = [[NSBundle mainBundle] `objectForInfoDictionaryKey:@"CFBundleShortVersionString"];`

[tracker set:kGAIAppVersion value:version];
[tracker set:kGAISampleRate value:@"50.0"];

这是我用来手动发送屏幕和事件数据的代码。
其中一些内容被删除,以使其成为通用的,以免泄露有关我的应用程序的个人信息。

// MANUALLY STARTING A SESSION:

// start session

id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker];

// You only need to set User ID on a tracker once. By setting it on the tracker, the ID will be

// sent with all subsequent hits.

[tracker set:@"&uid"
value:self.sessionID];

[tracker send:[[GAIDictionaryBuilder
createEventWithCategory:@"User ID"
action:@"User Starts Session"
label:deviceLabel
value:nil] build]];

GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];

[builder set:@"start" forKey:kGAISessionControl];
[tracker set:kGAIScreenName value:vcName];
[tracker send:[builder build]];


// MANUALLY ENDING A SESSION:

id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];
[builder set:@"end" forKey:kGAISessionControl];
[tracker set:kGAIScreenName value:vcName];
[tracker send:[builder build]];


// MANUALLY SENDING SCREEN VIEW INFO TO GA

id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker];
[tracker set:kGAIScreenName value:sceneName];
[tracker send:[[GAIDictionaryBuilder createScreenView]build]];

// EXAMPLE CODE OF MANUALLY SENDING EVENT DATA TO GA

id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker];
[tracker set:kGAIScreenName value:sceneName];
[tracker send:[[GAIDictionaryBuilder createEventWithCategory:@"ui_action" action:@"table_row_selected" label:rowTitle value:nil]build]];
[tracker set:kGAIScreenName value:nil];

就是这样。这一切过去都有效,我一遍又一遍地查阅文档,似乎没有任何错误。

如何解决此问题?

感谢您的宝贵时间。

更新:我创建了一个具有不同跟踪代码的新属性来跟踪其他类型的信息(基本上我现在在我的应用程序中使用了多个跟踪器),现在无论出于何种原因,我使用的旧跟踪器都不再有效,尽管我尝试,但我用来记录网络信息的其他跟踪器,即网络服务调用等确实有效。老实说,我现在认为这是谷歌的事情。我不明白为什么它可以工作,而现在却不能。我根本没有更改与原始属性或跟踪信息相关的任何内容。

最佳答案

好的,我找到了解决方案。我创建了一个全新的 gmail 帐户来进行分析并创建了一个新报告并将其链接到我的应用程序并且出于某种原因解决了它。

关于ios - 适用于 IOS 的谷歌分析 SDK 不再跟踪屏幕或事件。曾经工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30082060/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com