android - 手机间隙 : how to use Google Analytics without plugin

标签 android html plugins cordova google-analytics

我有一个使用 Phonegap 和 jQueryMobile 构建的 HTML5 应用程序,我正在针对 Android 测试它。我想包括 Analytics,但我采用的每一种方法都会遇到障碍。

This solution真的让我很兴奋:只要包含一个 JS 文件,在 html 中初始化 Analytics,我就准备好了。它看起来非常有前途。它在浏览器中工作。但不是在我运行 Android 4.1.2 的 Nexus S 上。

我把这个脚本放在文档头的末尾:

<script type="text/javascript" src="GALocalStorage.js"></script>
<script>
    ga_storage._setAccount('UA-XXXXXXXX-1');  
    ga_storage._trackPageview('/index.html');
    ga_storage._trackEvent('Startup','Starting scripts all loaded')
</script>

在应用程序启动的早期,我得到了这些令人鼓舞的调试信号:

09-05 21:47:49.558: V/GAV3(22963): Thread[GAThread,5,main]: connecting to Analytics service
09-05 21:47:49.609: V/GAV3(22963): Thread[GAThread,5,main]: connect: bindService returned true for Intent { act=com.google.android.gms.analytics.service.START (has extras) }
09-05 21:47:49.656: V/GAV3(22963): Thread[GAThread,5,main]: Loaded clientId
...
09-05 21:47:49.660: I/GAV3(22963): Thread[GAThread,5,main]: No campaign data found.
09-05 21:47:49.664: V/GAV3(22963): Thread[GAThread,5,main]: putHit called

不久之后出现了一些“Unknown Chromium error: 0”。当我将 GALocalStorage 设置为 Debug模式时,我发现这几乎总是在“跟踪事件”之后。

然后,很久以后,这些行出现了:

09-05 21:47:52.558: V/GAV3(22963): Thread[Failed Connect,5,main]: falling back to local store
09-05 21:47:52.609: V/GAV3(22963): Thread[GAThread,5,main]: Sending hit to store  PATH: https:  PARAMS: v=1,  ul=nl-nl,  t=appview,  ht=1378410463883,  sr=480x800,  an=True-Budget,  tid=UA-XXXXXXX-1,  aid=com.mappingtheforest.truebudget,  cid=c1c63a4d-0dfd-48fb-9e8a-1371e06d28b4,  av=1.0.0,  _u=.KnL,  
09-05 21:47:52.777: V/GAV3(22963): Thread[GAThread,5,main]: PowerSaveMode initiated.
09-05 21:47:52.937: V/GAV3(22963): Thread[GAThread,5,main]: PowerSaveMode terminated.
09-05 21:47:52.937: V/GAV3(22963): Thread[GAThread,5,main]: Dispatch running...
09-05 21:47:52.976: V/GAV3(22963): Thread[GAThread,5,main]: User-Agent: GoogleAnalytics/3.0 (Linux; U; Android 4.1.2; nl-nl; Nexus S Build/JZO54K)
09-05 21:47:52.976: V/GAV3(22963): Host: ssl.google-analytics.com
09-05 21:47:52.976: V/GAV3(22963): GET /collect?v=1&ul=nl-nl&t=appview&ht=1378410463883&sr=480x800&an=True-Budget&tid=UA-XXXXXXXX-1&aid=com.mappingtheforest.truebudget&cid=c1c63a4d-0dfd-48fb-9e8a-1371e06d28b4&av=1.0.0&_u=.KnL&_v=ma3.0.0&qt=9079&z=1 HTTP/1.1

我已经确保 google-analytics.com 域已在 Phonegap 的 config.xml 文件中列入白名单。

这是怎么回事?

最佳答案

现在你会想要使用:

<access origin="*://*.google-analytics.com/*" subdomains="true" />

关于android - 手机间隙 : how to use Google Analytics without plugin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18654693/

相关文章:

c# - 从 Unity 3d 获取 applicationContext

javascript - javascript可以作为某些插件通过浏览器运行吗

android - ionic cordova run android --prod 事件无法正常工作

android - 在真实设备上进行测试时,uses-library com.android.nfc_extras 会破坏 API 26 及更高版本的 AndroidTest

PHP、MySQL : Problem retrieving image url strings from database

html - 将选择的数据返回到包含键值对的下拉表单元素

ios - 'NSInvalidArgumentException',原因 : '*** -[NSURL initFileURLWithPath:]: nil string parameter'

java - 蓝牙安卓错误

android - 我的数据库中的搜索过滤器有问题

javascript - 如何为使用 Javascript 显示的内容创建过滤器?