誰かが私を助けることができるかどうか疑問に思っています.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"];
どちらも効果がないようです