事件的谷歌标签管理器将不推到数据层在Android [英] Google tag manager won't push event's to datalayer on Android

查看:278
本文介绍了事件的谷歌标签管理器将不推到数据层在Android的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想实现标签管理在我的Andr​​oid应用以下本指南,但对于由于某种原因,事件的,我不能推到数据层。

I'm trying to implement Tag Manager in my Android Application following this guide, but for some reason I can't push event's to the datalayer.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    TagManager tagManager = TagManager.getInstance(getApplicationContext());
    TagManager.getInstance(getApplicationContext()).setVerboseLoggingEnabled(true);

    PendingResult<ContainerHolder> pending = tagManager.loadContainerPreferFresh(GOOGLE_TAG_MANAGER_CONTAINER_ID, R.raw.gtm_default_container_v2);
    pending.setResultCallback(new ResultCallback<ContainerHolder>() {
        @Override
        public void onResult(ContainerHolder containerHolder) {
            TagManager.getInstance(getApplicationContext()).getDataLayer().push("event", "screenName");
            // Using the "pushEvent" method doesn't work either
            // TagManager.getInstance(getApplicationContext()).getDataLayer().pushEvent("screenName", DataLayer.mapOf());
        }
    }, 2, TimeUnit.SECONDS);
}

当我尝试运行我的应用程序,我所有的日志中说的是这个

When I try to run my app, all my log is saying is this

V/GoogleTagManager﹕ Attempting to load a container from the resource ID 2131099649 (com.example.cpe.gatestapp:raw/gtm_default_container_v2)
V/GoogleTagManager﹕ Deleted 0 expired items
W/GoogleTagManager﹕ Failed to extract the container from the resource file. Resource is a UTF-8 encoded string but doesn't contain a JSON container
V/GoogleTagManager﹕ The container was successfully loaded from the resource (using binary file)
E/GoogleTagManager﹕ Invalid macro: _gtm.loadEventEnabled
V/GoogleTagManager﹕ Attempting to load resource from disk
V/GoogleTagManager﹕ loadAfterDelay: containerId=GTM-XXXXXX delay=0
D/GoogleTagManager﹕ Setting previous container version: MQ$0
E/GoogleTagManager﹕ Invalid macro: _gtm.loadEventEnabled
V/GoogleTagManager﹕ The Disk resource was successfully read.
V/GoogleTagManager﹕ Start loading resource from network ...
V/GoogleTagManager﹕ Successfully loaded supplemented resource: zzi_p: "MQ$0"
V/GoogleTagManager﹕ No change for container: GTM-XXXXXX
V/GoogleTagManager﹕ loadAfterDelay: containerId=GTM-XXXXXX delay=43200000
D/GoogleTagManager﹕ Setting previous container version: MQ$0
E/GoogleTagManager﹕ Invalid macro: _gtm.loadEventEnabled
V/GoogleTagManager﹕ setting refresh time to current time: 1435818825632
V/GoogleTagManager﹕ Load resource from network finished.

从我的GA和标签管理帐户截图:

Screenshots from my GA and Tag Manager accounts:

推荐答案

在回答我的问题是pretty简单后,我想通了。

The answer to my question is pretty simple after I figured it out.

所以,我已经创建了一个分析跟踪,如果我的应用程序崩溃时跟踪的。我已经做出了选择,如果我跑我在调试模式下的应用又名从AndroidStudio运行它,我的追踪器会做出DRYRUN。

So I have created an Analytics Tracker which track's if my application crashes. I have made a option, that if i'm running my application in debug mode aka running it from AndroidStudio, my Tracker will make a 'dryRun'.

所以我想通了TagManager使用Analytics(分析)跟踪器发送的所有事件。这就是为什么它帮助禁用我的Google分析跟踪的DRYRUN。

So I figured that the TagManager is using the Analytics tracker to send all the events. Which is why it helped to disable the dryRun on my GoogleAnalytics tracker.

这篇关于事件的谷歌标签管理器将不推到数据层在Android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆