您好我想在我的iOS应用中集成谷歌分析。但是它不起作用,当我打开分析仪表时它显示实时用户0,实际上它总是显示为零。
以下是我到目前为止所做的步骤
1.下载适用于iOS的Google AnalyticsSDK。
然后我只关注了这个developer.google.com链接link
这些是我的代码。
in appdelegate.h
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//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;
// Optional: set Logger to VERBOSE for debug information.
[[[GAI sharedInstance] logger] setLogLevel:kGAILogLevelVerbose];
// Initialize tracker.
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"UA-********-*"];
return YES;
}
in my viewcontroller.h file
#import "GAITrackedViewController.h"
#import <UIKit/UIKit.h>
@interface TopNewsViewController : GAITrackedViewController{
}
@property(nonatomic,retain)NSString *screenName;
@end
in my viewcontroller.m
#import "GAIDictionaryBuilder.h"
#import "GAI.h"
#define kGAIScreenName @"TopNewsViewController"
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
id tracker = [[GAI sharedInstance] defaultTracker];
[tracker set:kGAIScreenName
value:@"Home Screen"];
[tracker send:[[GAIDictionaryBuilder createAppView] build]];
}
以下内容正在我的日志中打印
2014-01-16 19:39:56.766 tempfiles12[844:60b] <Google> To get test ads on this device, call: request.testDevices = [NSArray arrayWithObjects:@"12d2c8c8808caa10aa1f6d947afc7f33", nil];
2014-01-16 19:39:57.555 tempfiles12[844:60b] INFO: GoogleAnalytics 3.02 -[GAIReachabilityChecker reachabilityFlagsChanged:] (GAIReachabilityChecker.m:159): Reachability flags update: 0X000002
2014-01-16 19:39:57.563 tempfiles12[844:1803] ERROR: unable to get the receiver data from the DB!
2014-01-16 19:39:57.571 tempfiles12[844:60b] INFO: GoogleAnalytics 3.02 -[GAITrackedViewController viewDidAppear:] (GAITrackedViewController.m:21): Tracked view controller missing view name.
2014-01-16 19:39:57.611 tempfiles12[844:5317] VERBOSE: GoogleAnalytics 3.02 -[GAIBatchingDispatcher persist:] (GAIBatchingDispatcher.m:414): Saved hit: {
parameters = {
"&_u" = ".o-etnoK-L";
"&_v" = "mi3.0.2";
"&an" = tempfiles12;
"&av" = "6.0";
"&cid" = "b34bfd7f-45f8-4f4e-84a5-a0d0988e7356";
"&sr" = 768x1024;
"&t" = appview;
"&tid" = "UA-47216473-1";
"&ul" = en;
"&v" = 1;
"&z" = 4061780796142886022;
TopNewsViewController = "Home Screen";
gaiVersion = "3.02";
};
timestamp = "2014-01-16 14:09:57 +0000";
}
2014-01-16 19:40:17.009 tempfiles12[844:5317] VERBOSE: GoogleAnalytics 3.02 -[GAIRequestBuilder requestGetUrl:payload:] (GAIRequestBuilder.m:177): building URLRequest for https://ssl.google-analytics.com/collect
2014-01-16 19:40:17.011 tempfiles12[844:5317] VERBOSE: GoogleAnalytics 3.02 -[GAIBatchingDispatcher dispatch] (GAIBatchingDispatcher.m:499): Sending hit(s) GET: https://ssl.google-analytics.com/collect?_v=mi3.0.2&av=6.0&_u=.o-etnoK-L&ul=en&v=1&an=tempfiles12&t=appview&sr=768x1024&cid=b34bfd7f-45f8-4f4e-84a5-a0d0988e7356&tid=UA-47216473-1&ht=1389881397577&qt=19431&z=4061780796142886022
2014-01-16 19:40:17.232 tempfiles12[844:60b] INFO: GoogleAnalytics 3.02 -[GAIBatchingDispatcher didSendHits:response:data:error:] (GAIBatchingDispatcher.m:157): Hit(s) dispatched: HTTP status 200
2014-01-16 19:40:17.233 tempfiles12[844:5317] INFO: GoogleAnalytics 3.02 -[GAIBatchingDispatcher deleteHits:] (GAIBatchingDispatcher.m:426): hit(s) Successfully dispatched
2014-01-16 19:40:17.240 tempfiles12[844:5317] INFO: GoogleAnalytics 3.02 -[GAIBatchingDispatcher didSendHits:] (GAIBatchingDispatcher.m:167): 1 hit(s) sent
控制台
答案 0 :(得分:5)
如果它不起作用的另一个原因:您必须在创建Google跟踪ID后24-48小时才能查看结果。 (即使是实时的)
答案 1 :(得分:3)
在我们的viewcontroller.m文件中
我们需要使用已在GAITrackedViewController.m中定义的屏幕名称变量
所以在我的例子中,变量名称是“screenname”,我所做的是在viewcontroller.h中声明相同的变量。
所以我删除了那一行,我添加了这一行
“self.screenname = @”我的屏幕名称“;
没有工作......
其余的事情都在发挥作用。