Google Analytics集成在iOS中无效

Ban*_*ore 7 analytics google-analytics objective-c ios

您好我试图在我的iOS应用程序中集成谷歌分析.但它不起作用,当我打开分析仪表板时它显示实时用户0,实际上它总是显示为零.

以下是我到目前为止所做的步骤

1.下载适用于iOS的Google AnalyticsSDK.

然后我就跟着这个developer.google.com链接 链接

这些是我的代码.

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]];

}
Run Code Online (Sandbox Code Playgroud)

以下是在我的日志中打印

    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
Run Code Online (Sandbox Code Playgroud)

仪表板

在此输入图像描述

Rom*_*ald 5

如果它不起作用的另一个原因:您必须在创建谷歌跟踪ID后24-48小时才能看到结果.(即使是实时)

另请参阅:iOS上的Google Analytics:未跟踪的事件


Ban*_*ore 3

哇..我找到答案了..

在我们的 viewcontroller.m 文件中

我们需要使用 GAITrackedViewController.m 中已定义的屏幕名称变量

所以在我的例子中,变量名称是“screenname”,我所做的是在 viewcontroller.h 中声明相同的变量。

所以我删除了该行并添加了这一行

"self.screenname=@"我的屏幕名称";

现在它正在工作..

其余的事情都在进行。