如何在iOS中的PhoneGap 1.2.0中安装Google Analytics?
首先,我必须给予这些家伙很多荣誉.他们的博客提供了巨大的帮助,但我仍然需要做更多的事情才能最终实现它.
我将逐步完成它,这样你就可以让它在一个非常基础的水平上工作,然后你可以从那里开始.我发现即使是最轻微的错误也会让事情搞得一团糟.
我假设你已经安装了PhoneGap 1.2.0并使用Xcode 4.2
A部分
获取基本的PhoneGap应用程序.按照PhoneGap指南进行操作.
B部分
下载PhoneGap Google Analytics插件.我发现最简单的事情就是从这里下载zip文件.你会得到一堆你不需要的东西,但这并不重要.
展开下载目录中的文件.进入扩展目录..进入iPhone文件夹,你应该看到GoogleAnalytics文件夹.
在Xcode中,右键单击项目(顶部的蓝色块),然后选择"将文件添加到".导航到展开的文件夹.点击"GoogleAnalytics"文件夹.确保选中"将文件复制到目标组的文件夹(如有必要)"并将其添加到目标.点击"添加".将Xcode 文件夹中的文件拖到Plugins文件夹中.
返回Finder并打开项目目录.将GoogleAnalyticsPlugin.js
GoogleAnalytics文件夹复制到"www"文件夹.Xcode将发出有关重新保存文件的警告.只需单击"关闭"即可.
转到index.html文件.在function onDeviceReady()
下面的行添加到函数的开始.
window.plugins.googleAnalyticsPlugin.startTrackerWithAccountID("YOUR UA CODE");
接下来在函数下添加以下函数onDeviceReady
(在同一个脚本块内)
function trackpage(id) { console.log("start trackpage: " + id); window.plugins.googleAnalyticsPlugin.trackPageview(id); console.log("end trackpage: " + id); }
现在,仍然在index.html文件中,找到该行
(记住这是phonegap 1.2.0)
在它之后添加以下行.
这提供了一个可以在测试应用中单击的链接.
NB.您必须在跟踪的页面中有正斜杠(/).所以javascript:trackpage('/TEST')
会工作,而javascript:trackpage('TEST')
不会.
最后,仍然在index.html中添加以下行
下面
不要试图运行它.它不会起作用.
C部分
接下来转到GoogleAnalytics.h
文件.只需擦拭它......这里有一堆问题.JSON现在似乎是JSONKit,PhoneGapCommand现在是PGPlugin ..只需粘贴它.WapMG文档似乎到处都是.
#import#ifdef PHONEGAP_FRAMEWORK #import #import #import #else #import "PGPlugin.h" #import "NSData+Base64.h" #import "JSONKit.h" #endif #import "GANTracker.h" @interface GoogleAnalyticsPlugin : PGPlugin { } - (void) startTrackerWithAccountID:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options; - (void) trackEvent:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options; - (void) trackPageview:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options; @end
D部分
接下来,将Google Analytics部分添加到项目中.这是Google提供的部分,但它方便地包含在phonegap ios GoogleAnalytics/GoogSDK插件文件夹中.
在Xcode中,转到该GoogleAnalytics/GoogSDK
文件夹并将GANTracker.h
和libGoogleAnalytics.a
文件拖到Plugins目录中.
基本上你需要将它们从'blue' GoogleAnalytics/GoogSDK
文件夹复制到'yellow'文件夹中,以便它们可以通过头文件找到.
E部分
接下来,我们需要添加sqlite(Google Analytics在不在线时存储数据)和CFNetwork(以便Google Analytics可以将数据上传到项目中).
在Xcode中单击项目(文件顶部的蓝色部分).单击主目标.然后单击Build Phases.列表中的第3项是"Link Binary with Libraries".请注意,其中有两个..选择前一个.打开它,然后单击+号.添加libsqlite3.0.dylib
然后添加CFNetwork.framework
.
第F部分
最后(几乎在那里)我们需要设置插件.转到该PhoneGap.plist
文件.在插件下添加另一个条目,其中键为googleAnalyticsPlugin
(javascript名称),值为GoogleAnalyticsPlugin
(Obj-C部分).
在ExternalHosts下添加一个*
条目
现在试着跑.越过它的手指将起作用.
测试它以运行程序然后使用新的Google Analytics实时(BETA)模式的最佳方式,因为您可以看到正在跟踪的网页.
您需要更改为新版本的Google Analytics(它应该是顶部的明显链接以转移到新版本).打开GA帐户,转到Home ..REAL_TIME ...概述.您应该会在几秒钟内看到TEST页面跟踪.
注意:您无法实时跟踪事件.您需要等待它们被处理.
问题
在查看Compile Sources和Link Binary With Libraries时遇到了一些问题.GoogleAnalytics部分将显示为红色.如果它们是红色的,则意味着您的项目找不到它们,我认为您如何解决这个问题取决于您的Xcode版本,因此您可能需要谷歌一点来解决这个问题.我做的是删除GoogleAnalytics(按 - 符号)然后将文件拖入.如果它显示为"正确的图标"(而不是红色框),它应该有效.
在Android上做它也?
我假设你使用的是Phonegap,你也可能正在使用Android版本.如果是这种情况,您可能需要查看此比较 Q + A的差异.