npm i --save nativescript-google-tagmanager
- 版本: 1.0.0
- GitHub: https://github.com/cenkingunlugu/nativescript-google-tagmanager
- NPM: https://npmjs.net.cn/package/nativescript-google-tagmanager
- 下载量
- 昨日: 0
- 上周: 0
- 上个月: 0
NativeScript Google Tag Manager
添加插件
tns plugin add nativescript-google-tagmanager
需求
从 Google 标签管理器页面下载你的容器作为二进制文件。
IOS
在你的应用中,将二进制文件复制到以下文件夹中
/App_Resources/IOS
Android
在你的应用中,将二进制文件复制到以下文件夹中
/App_Resources/Android/raw
注意:如果 Android 文件夹中没有 raw 文件夹,请创建它。注意2:将二进制文件名改为小写字母,并替换 - 为 _(这是由于 Android 的文件名限制所必需的)。
####例如
如果你的二进制文件名为 GTM-AAA11B,则将其名称更改为:gtm_aaa11b
在 app.js 中初始化追踪器
纯 JS
var application = require("application");
var tagManager = require("nativescript-google-tagmanager");
application.mainModule = "main-page";
application.cssFile = "./app.css";
if (application.ios) {
//iOS
var __extends = this.__extends || function (d, b) {
for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
function __() { this.constructor = d; }
__.prototype = b.prototype;
d.prototype = new __();
};
var appDelegate = (function (_super) {
__extends(appDelegate, _super);
function appDelegate() {
_super.apply(this, arguments);
}
appDelegate.prototype.applicationDidFinishLaunchingWithOptions = function (application, launchOptions) {
initTagManager(); //Module Code to initalize
};
appDelegate.ObjCProtocols = [UIApplicationDelegate];
return appDelegate;
})(UIResponder);
application.ios.delegate = appDelegate;
}else{
//ANDROID
application.on(application.launchEvent, function (args) {
initTagManager(); //Module Code to initalize
});
}
application.start();
function initTagManager(){
tagManager.initalize({
containerId: "GTM-XXXXXX", //YOUR Id from GTM
logLevel: 'verbose'//Optional, default none.
//available values: 'verbose', 'debug', 'info', 'warning', 'error'
});
}
TypeScript
var application = require("application");
import * as googleTagManager from "nativescript-google-tagmanager";
application.mainModule = "main-page";
application.cssFile = "./app.css";
if (application.ios) {
//iOS
class MyDelegate extends UIResponder implements UIApplicationDelegate {
public static ObjCProtocols = [UIApplicationDelegate];
applicationDidFinishLaunchingWithOptions(application: UIApplication, launchOptions: NSDictionary): boolean {
initTagManager(); //Module Code to initalize
return true;
}
}
application.ios.delegate = MyDelegate;
}else{
//ANDROID
application.on(application.launchEvent, function (args) {
initTagManager(); //Module Code to initalize
});
}
application.start();
function initTagManager(){
googleTagManager.initalize({
containerId: "GTM-XXXXXX", //YOUR Id from GTM
logLevel: 'verbose'//Optional, default none.
//available values: 'verbose', 'debug', 'info', 'warning', 'error'
});
}
方法
记录任何内容
// category and action are not optional, label and value are
googleTagManager.log({
"event": "eventTrack",
"eventCategory": "Button",
"eventAction": "Press",
"eventLabel": "Sign Up",
"screenName": "Login"
});
googleTagManager.log({
"event": "screenVisible",
"screenName": "Login"
});