این راهنما نحوه ایجاد و پیادهسازی یک برنامه iOS در سوئیفت را برای ردیابی رویدادهای فشار داده شده روی صفحه نمایش و دکمهها با Google Tag Manager (GTM) توضیح میدهد.
1. یک پروژه جدید ایجاد کنید
- Xcode را باز کنید.
- روی ایجاد پروژه جدید Xcode کلیک کنید.
- برنامه Single View را انتخاب کنید.
- روی Next کلیک کنید.
- پروژه خود را نام ببرید و گزینه های اضافی را برای آن انتخاب کنید. نام پروژه و نام برنامه شما با نام محصول یکی خواهد بود.
- روی Next کلیک کنید.
- محل پروژه (دایرکتوری) را انتخاب کنید.
- روی ایجاد کلیک کنید.
2. وابستگی های گوگل تگ منیجر را نصب کنید
- از Xcode خارج شوید.
- در یک ترمینال، دستور زیر را برای نصب Cocoapods اجرا کنید:
$ sudo gem install cocoapods
- به دایرکتوری پروژه خود تغییر دهید.
- برای ایجاد فایلی به نام
Podfile
دستور زیر را اجرا کنید:$ pod init
- در
Podfile
،use_frameworks!
وpod 'GoogleTagManager'
به هدف اضافه کنید: - دستور زیر را برای دانلود و نصب وابستگی های Google Tag Manager (GTM) در پروژه خود اجرا کنید:
$ pod install
این دستور همچنین فضای کاری
GtmSwiftTutorial.xcworkspace
را ایجاد می کند. از این پس، از این فضای کاری برای توسعه برنامهGtmSwiftTutorial
استفاده کنید.
# Uncomment this line if you're using Swift use_frameworks! target 'GtmSwiftTutorial' do pod 'GoogleTagManager' end
3. یک هدر پل زدن برای کتابخانه های Objective-C اضافه کنید
برای ایجاد یک فایل هدر پل زدن :
- Xcode را باز کنید.
- روی File > New > File کلیک کنید.
- در زیر iOS > Source ، Header File را انتخاب کنید.
- روی Next کلیک کنید.
- نام فایل هدر را وارد کنید
BridgingHeader.h
. - روی ایجاد کلیک کنید.
- این دستورهای
import
را به فایل هدر اضافه کنید:#ifndef BridgingHeader_h #define BridgingHeader_h #import <GoogleTagManager/TAGManager.h> #import <GoogleTagManager/TAGContainer.h> #import <GoogleTagManager/TAGContainerOpener.h> #import <GoogleTagManager/TAGDataLayer.h> #import <GoogleTagManager/TAGLogger.h> #endif /* BridgingHeader_h */
برای اضافه کردن هدر پل زدن Objective-C در تنظیمات ساخت :
- در Xcode، روی پروژه خود کلیک کنید.
- در قسمت ویرایشگر روی Build Settings کلیک کنید.
- All and Combined را انتخاب کنید و bridge را جستجو کنید.
- در ستون سمت راست سطر حاوی Objective-C Bridging Header ،
BridgingHeader.h
را وارد کنید.
4. یک کانتینر پیش فرض به پروژه خود اضافه کنید
قبل از افزودن یک کانتینر پیش فرض به پروژه خود، یک باینری کانتینر موبایل را دانلود کنید:
- به حساب Google Tag Manager خود وارد شوید.
- یک ظرف سیار انتخاب کنید.
- در نوار منو روی Versions کلیک کنید.
- روی Actions > Download در نسخه ظرف انتخابی کلیک کنید.
GTM-PT3L9Z
.برای افزودن یک باینری کانتینر پیش فرض به پروژه خود:
- Xcode را باز کنید.
- روی نماد Finder در Dock کلیک کنید.
- روی پوشه
Downoloads
کلیک کنید. - فایل باینری کانتینر را در پوشه
Downloads
بکشید و آن را به پوشه اصلی پروژه Xcode خود رها کنید.
5. Google Tag Manager را به برنامه خود پیوند دهید
- در Xcode، فایل
AppDelegate.swift
را باز کنید. - از کلاس
AppDelegate
بخواهید کلاسTAGContainerOpenerNotifier
را گسترش دهد:import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate, TAGContainerOpenerNotifier { // ... }
پس از تمدید کلاس، با خطای
Type 'AppDelegate' does not conform to protocol 'TAGContainerOpenerNotifier'
مواجه خواهید شد. مرحله زیر این خطا را برطرف می کند. - تابع زیر را به پایین تعریف کلاس
AppDelegate
اضافه کنید:func containerAvailable(container: TAGContainer!) { container.refresh() }
- در تابع
application
، کد زیر را قبل از عبارتreturn true
اضافه کنید:let GTM = TAGManager.instance() GTM.logger.setLogLevel(kTAGLoggerLogLevelVerbose) TAGContainerOpener.openContainerWithId("GTM-PT3L9Z", // change the container ID "GTM-PT3L9Z" to yours tagManager: GTM, openType: kTAGOpenTypePreferFresh, timeout: nil, notifier: self)
6. رویداد باز صفحه نمایش را ردیابی کنید
برای ردیابی یک رویداد باز صفحه:
- یک متغیر برای ذخیره شناسه ردیابی ایجاد کنید.
- یک متغیر لایه داده با نام screenName ایجاد کنید.
- یک تگ GTM با عنوان Screen View ایجاد کنید.
- کد ردیابی صفحه را اضافه کنید
الف یک متغیر برای ذخیره شناسه ردیابی ایجاد کنید
- به حساب Google Tag Manager خود وارد شوید.
- یک ظرف سیار انتخاب کنید.
- در نوار پیمایش سمت چپ، روی متغیرها کلیک کنید.
- در قسمت متغیرهای تعریف شده توسط کاربر ، روی New کلیک کنید.
- روی Untitled Variable کلیک کنید تا نام متغیر Tracking ID را وارد کنید.
- Constant را به عنوان نوع متغیر انتخاب کنید.
- شناسه ردیابی (به شکل
UA-XXXXXXXX-X
کهX
یک رقم است) را به عنوان مقدار متغیر وارد کنید.ازUA-47605289-5
استفاده کنید (حذف شود). - روی Create Variable کلیک کنید.
ب یک متغیر لایه داده با نام screenName ایجاد کنید
- به حساب Google Tag Manager خود وارد شوید.
- یک ظرف سیار انتخاب کنید.
- در نوار پیمایش سمت چپ، روی متغیرها کلیک کنید.
- در قسمت متغیرهای تعریف شده توسط کاربر ، روی New کلیک کنید.
- برای وارد کردن عنوان Screen Name روی Untitled Variable کلیک کنید.
- متغیر لایه داده را به عنوان نوع متغیر انتخاب کنید.
- screenName را به عنوان نام متغیر لایه داده وارد کنید.
- روی تنظیم مقدار پیش فرض کلیک کنید.
- مقدار پیشفرض صفحه ناشناخته را وارد کنید.
- روی Create Variable کلیک کنید.
ج یک تگ GTM با عنوان Screen View ایجاد کنید
- به حساب Google Tag Manager خود وارد شوید.
- یک ظرف سیار انتخاب کنید.
- در نوار پیمایش سمت چپ، روی برچسبها کلیک کنید.
- روی New کلیک کنید.
- روی Untitled Tag کلیک کنید تا نام برچسب را وارد کنید Screen View .
- محصول Google Analytics را انتخاب کنید.
- شناسه پیگیری را از لیست انتخاب کنید.
- App View را به عنوان نوع آهنگ انتخاب کنید.
- تنظیمات بیشتر را کلیک کنید.
- روی فیلدها برای تنظیم کلیک کنید.
- روی + افزودن فیلد کلیک کنید.
- نام فیلد screenName و مقدار آن Screen Name را انتخاب کنید.
- روی Continue کلیک کنید.
- در زیر Fire On ، Any Event را انتخاب کنید.
- روی ایجاد برچسب کلیک کنید.
د کد ردیابی صفحه را اضافه کنید
- فایل
ViewController.swift
را در Xcode باز کنید. - یک متغیر به نام
dataLayer
در کلاسViewController
تعریف کنید:var dataLayer: TAGDataLayer = TAGManager.instance().dataLayer
- در تابع
viewDidLoad()
رویدادOpenScreen
را به لایه داده فشار دهید:dataLayer.push(["event": "OpenScreen", "screenName": "Home Screen"])
تعریف کلاس ViewController
به صورت زیر است:
import UIKit class ViewController: UIViewController { var dataLayer: TAGDataLayer = TAGManager.instance().dataLayer override func viewDidLoad() { super.viewDidLoad() dataLayer.push(["event": "OpenScreen", "screenName": "Home Screen"]) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that cant be recreated } }
7. رویداد فشرده دکمه آهنگ
برای ردیابی رویداد فشرده شده:
- یک متغیر لایه داده با نام eventAction ایجاد کنید.
- یک متغیر رویداد سفارشی با نام Event ایجاد کنید.
- یک تگ GTM با عنوان دکمه فشرده ایجاد کنید.
- یک دکمه ایجاد کنید و کدی را برای پیگیری فشار دادن دکمه اضافه کنید.
الف یک متغیر لایه داده با نام eventAction ایجاد کنید
- به حساب Google Tag Manager خود وارد شوید.
- یک ظرف سیار انتخاب کنید.
- در نوار پیمایش سمت چپ، روی متغیرها کلیک کنید.
- در قسمت متغیرهای تعریف شده توسط کاربر ، روی New کلیک کنید.
- روی Untitled Variable کلیک کنید تا عنوان Event Action را وارد کنید.
- متغیر لایه داده را به عنوان نوع متغیر انتخاب کنید.
- eventAction را به عنوان نام متغیر لایه داده وارد کنید.
- روی تنظیم مقدار پیش فرض کلیک کنید.
- مقدار پیشفرض رویداد ناشناخته را وارد کنید.
- روی Create Variable کلیک کنید.
ب یک متغیر رویداد سفارشی با نام Event ایجاد کنید
- به حساب Google Tag Manager خود وارد شوید.
- یک ظرف سیار انتخاب کنید.
- در نوار پیمایش سمت چپ، روی متغیرها کلیک کنید.
- در قسمت متغیرهای تعریف شده توسط کاربر ، روی New کلیک کنید.
- روی Untitled Variable کلیک کنید تا نام متغیر Event را وارد کنید.
- رویداد سفارشی را به عنوان نوع متغیر انتخاب کنید.
- روی Create Variable کلیک کنید.
ج یک تگ GTM با عنوان دکمه فشرده ایجاد کنید
- به حساب Google Tag Manager خود وارد شوید.
- یک ظرف سیار انتخاب کنید.
- در نوار پیمایش سمت چپ، روی برچسبها کلیک کنید.
- روی New کلیک کنید.
- بر روی Untitled Tag کلیک کنید تا نام برچسب را وارد کنید. دکمه فشرده شده است .
- محصول Google Analytics را انتخاب کنید.
- شناسه پیگیری را از لیست انتخاب کنید.
- رویداد را به عنوان نوع آهنگ انتخاب کنید.
- دسته رویداد را انتخاب کنید.
- اقدام رویداد را انتخاب کنید.
- روی Continue کلیک کنید.
- در زیر Fire On ، Any Event را انتخاب کنید.
- روی ایجاد برچسب کلیک کنید.
د یک دکمه ایجاد کنید و کدی را برای پیگیری فشار دادن دکمه اضافه کنید
- پروژه Xcode خود را باز کنید.
-
Main.storyboard
باز کنید. - روی دکمه سمت راست بالای نوار ابزار Xcode کلیک کنید تا قسمت ابزار (نوار کناری سمت راست) باز شود.
- در پایین قسمت ابزار،
روی دکمه Show the Object library (دکمه آبی) کلیک کنید:
- دکمه را در کادر جستجو وارد کنید.
- دکمه را به استوری بورد بکشید و آن را در گوشه بالا سمت چپ رها کنید.
- روی دکمه دستیار ویرایشگر کلیک کنید در نوار ابزار Xcode.
- در حالی که کلید Ctrl را نگه داشته اید، دکمه را بکشید و به پایین تعریف کلاس
ViewController
رها کنید. - در گفتگو، Action connection را انتخاب کنید، دکمه نام تابع را وارد کنید فشار داده شده و روی اتصال کلیک کنید.
این تابع زیر را به انتهای تعریف کلاس
ViewController
اضافه می کند:@IBAction func buttonPressed(sender: AnyObject) { }
این عملکرد با هر بار فشار دادن دکمه اجرا می شود.
- در تابع
buttonPressed
، کد زیر را برای فشار دادن رویدادButtonPressed
به لایه روز اضافه کنید:@IBAction func buttonPressed(sender: AnyObject) { dataLayer.push(["event": "ButtonPressed", "eventAction": "Test Event"]) }
8. اپلیکیشن خود را بسازید و اجرا کنید
در Xcode، روی Product > Run کلیک کنید. Xcode برنامه را می سازد و اجرا می کند: