8

誰かが私を助けることができるかどうか疑問に思っています.IOSプロジェクトでGoogle Analyticsを設定しようとしています. ビューがロードされている回数を表示するには、非常に単純な実装が必要です。Google ドキュメント ( https://developers.google.com/analytics/devguides/collection/ios/v3/ ) に従いましたが、ダッシュボードで何も更新されませんでした

ユーザーが報告されていないプロパティを設定しています

私のappdelegateは次のとおりです

#import <UIKit/UIKit.h>
#import "GAI.h"

@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;
@property(nonatomic, strong) id<GAITracker> tracker;

@end

私の .m には - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

[GAI sharedInstance].trackUncaughtExceptions = YES;

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

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

// Initialize tracker. which i have set up at the top of my .mn
   self.tracker =  [[GAI sharedInstance] trackerWithTrackingId:kTrackingId];

return YES;
}

そして、インポートに関するメトリックを記録しようとしているページ #import "GAI.h" #import "GAIDictionaryBuilder.h"

次のメソッドが含まれています

-(void)viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];


id tracker = [[GAI sharedInstance] defaultTracker];

// This screen name value will remain set on the tracker and sent with
// hits until it is set to a new value or to nil.
[tracker set:@"&cd"
       value:@"Home Screen"];

// manual screen tracking
[tracker send:[[GAIDictionaryBuilder createAppView] build]];
}

エラーは表示されません。最初のコンソール ログは次のとおりです。

NFO: GoogleAnalytics 3.02 -[GAIReachabilityChecker reachabilityFlagsChanged:] (GAIReachabilityChecker.m:159): 到達可能性フラグの更新: 0X000002

しかし、ダッシュボードには何も表示されません

( https://developers.google.com/analytics/devguides/collection/ios/v3/screens )に記載されている Auto メソッドも試しましたが、これはスクリーン名が存在しないと訴えました

それは私を夢中にさせています!どんな助けでも大歓迎です!

アップデート

SDK に含まれている例を使用して、Google に登録するための初期ロードを取得できました。これは Google のドキュメントとは異なることに注意してください。

Appdelegate

 NSDictionary *appDefaults = @{kAllowTracking: @(YES)};
[[NSUserDefaults standardUserDefaults] registerDefaults:appDefaults];
// User must be able to opt out of tracking
[GAI sharedInstance].optOut =
![[NSUserDefaults standardUserDefaults] boolForKey:kAllowTracking];
// Initialize Google Analytics with a 120-second dispatch interval. There is a
// tradeoff between battery usage and timely dispatch.
[GAI sharedInstance].dispatchInterval = 120;
[GAI sharedInstance].trackUncaughtExceptions = YES;
self.tracker = [[GAI sharedInstance] trackerWithName:@"ios app name"
                                          trackingId:kTrackingId];

Googleドキュメントに従って、最初のView Controllerに自動スクリーントラッキングを使用しましたが、これは最初にロードされたView Controllerでのみ機能し、同じ方法を使用した後続のビューは登録されません。

また、私の問題は、APPdelegateメソッドが「application didFinishLaunchingWithOptions」でのみ機能するように見えることです。これは、アプリが毎回終了する場合にのみ機能し、「applicationWillEnterForeground」に同じコードを入れても機能しません-とてもイライラします-また試しました

    self.tracker = [[GAI sharedInstance] defaultTracker];
[self.tracker set:kGAISessionControl
       value:@"start"];

どちらも効果がないようです

4

1 に答える 1

0

ページ名を設定するときにエラーが発生すると思います:

[トラッカー セット:@"&cd" 値:@"ホーム画面"];

機能させるには、kGAIScreenName を設定する必要があります。つまり、 @"&cd" ではなく kGAIScreenName :

// This screen name value will remain set on the tracker and sent with
// hits until it is set to a new value or to nil.
[tracker set:kGAIScreenName value:@"Home Screen"];

[tracker send:[[GAIDictionaryBuilder createAppView] build]];

これが役立つことを願っています

于 2014-10-28T10:59:16.167 に答える