【发布时间】:2014-10-28 16:55:05
【问题描述】:
我是这个 Google 跟踪代码管理器的新手,我在尝试测试它时有点纠结。 这是我所做的:
- 创建了 GTM 帐户;
- 创建了一个容器;
- 创建了自定义图片标签;
- 为自定义图片标签添加了规则;
现在这是我的代码:
package com.google.android.tagmanager.examples.helloworld;
import com.google.tagmanager.Container;
import com.google.tagmanager.ContainerOpener;
import com.google.tagmanager.ContainerOpener.OpenType;
import com.google.tagmanager.TagManager;
import com.google.tagmanager.DataLayer;
import com.google.android.gms.ads.identifier.AdvertisingIdClient;
import com.google.android.gms.ads.identifier.AdvertisingIdClient.Info;
import com.google.android.gms.common.GooglePlayServicesNotAvailableException;
import java.io.IOException;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.graphics.Color;
import android.os.Bundle;
import android.os.StrictMode;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.TextView;
import android.telephony.*;
import android.provider.*;
/**
* An {@link Activity} that reads background and text color from a local
* Json file and applies those colors to text view.
*/
public class MainActivity extends Activity {
private static final String TAG = "GTMExample";
private static final String CONTAINER_ID = "GTM-PJNXHL";
private static final String OS = "os";
private static final String DEVICE_IMEI = "device_imei";
private static final String DEVICE_ANDROID_ID = "device_android_id";
private static final String GOOGLE_AD_ID = "google_ad_id";
private static String deviceImei = "";
private static String androidId = "";
private static String googleAdId = "";
// Set to false for release build.
private static final Boolean DEVELOPER_BUILD = true;
private Container container;
private DataLayer dataLayer;
private TelephonyManager telephonyManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
if (DEVELOPER_BUILD) {
StrictMode.enableDefaults();
}
// iau singletonul de tagmanager
TagManager tagManager = TagManager.getInstance(this);
ContainerOpener.ContainerFuture containerFuture = ContainerOpener.openContainer(
tagManager, CONTAINER_ID, OpenType.PREFER_NON_DEFAULT, null);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
telephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
// This call may block (for up to the timeout specified in
// ContainerOpener.openContainer). For an example that shows how to use a splash
// screen to avoid blocking, see cuteanimals example.
container = containerFuture.get();
dataLayer = tagManager.getDataLayer();
// Modify the background-color and text-color of text based on the value
// from configuration.
updateVars();
}
private void updateVars() {
Log.i(TAG, "image_test");
TextView textView = (TextView) findViewById(R.id.hello_world);
textView.setText(OS);
}
public void colorButtonClicked(View view) {
Log.i(TAG, "colorButtonClicked");
AlertDialog alertDialog = new AlertDialog.Builder(this).create();
alertDialog.setTitle("Getting vars");
deviceImei = telephonyManager.getDeviceId();
androidId = Settings.Secure.getString(getContentResolver(), Settings.Secure.ANDROID_ID);
Info adInfo = null;
try {
adInfo = AdvertisingIdClient.getAdvertisingIdInfo(this.getBaseContext().getApplicationContext());
} catch (Exception e) {
System.out.println(e.getMessage());
}
googleAdId = adInfo.getId();
alertDialog.setMessage(deviceImei);
dataLayer.push(DEVICE_IMEI, deviceImei);
dataLayer.push(DEVICE_ANDROID_ID, androidId);
dataLayer.push(GOOGLE_AD_ID, googleAdId);
alertDialog.setButton(AlertDialog.BUTTON_POSITIVE,
"OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
alertDialog.show();
updateVars();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
我想要的是使用 DataLayer 推送 deviceImei、androidId 和 googleAdId。
我的问题是:
- 如何测试并查看数据是否使用 dataLayer 推送?
- 如何测试并查看代码是否已使用 dataLayer 中的数据触发?
- 我在哪里进行测试以查看标签是否已被跟踪?
谢谢!
【问题讨论】:
标签: android google-tag-manager