1

iOSネイティブアプリ用のGooleAnalyticsv2.0beta3を使い始めました。次のコードでセッションを開始します。

[GAI sharedInstance].trackUncaughtExceptions = YES;
[GAI sharedInstance].dispatchInterval = 20;
[GAI sharedInstance].debug = YES;
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"UA-XXXX-X"];
[GAI sharedInstance].defaultTracker = tracker; 
[tracker setAnonymize:YES];
BOOL res = [tracker trackEventWithCategory:@"cat" withAction:@"act" withLabel:@"label" withValue:[NSNumber numberWithInt:1]];
[[GAI sharedInstance] dispatch];

ただし、セッションを終了する方法がわかりません。取得するセッション期間は常に0.0です。

誰かがこの問題に遭遇しましたか?

ありがとう

4

2 に答える 2

2

トラッカーが適切に設定されているかどうかを確認します。私のセットアップコードは次のとおりです

[GAI sharedInstance].debug = YES;
[GAI sharedInstance].dispatchInterval = 20;
[GAI sharedInstance].trackUncaughtExceptions = YES;
self.tracker = [[GAI sharedInstance] trackerWithTrackingId:kTrackingId];
NSLog(@"what is tracker %@ / default tracker %@?", self.tracker, [GAI sharedInstance].defaultTracker);

self.tracker の場所@property (strong, nonatomic) id <GAITracker> tracker;

正しいセッション追跡情報を取得しています。問題の原因がわかるまで、コードを引き出してみてはいかがでしょうか?

さらに、回避策は次のようなものです。

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    appBecameActive = [NSDate date];
}

- (void)applicationDidEnterBackground:(UIApplication *)application
{
    NSDate *appClosing = [NSDate date];
    NSTimeInterval sessionLength = [appClosing timeIntervalSinceDate:appBecameActive];
    [[GAI sharedInstance].defaultTracker trackTimingWithCategory:@"sessionLength"
                                                   withValue:sessionLength
                                                    withName:@"appWentToBackground"
                                                   withLabel:nil];
}
于 2012-12-28T22:32:23.993 に答える