במדריך הזה מוסבר איך ליצור ולהטמיע אפליקציה ל-iOS ב-Swift כדי לעקוב אחר אירועים בפתיחת מסך ובלחיצה עליהם באמצעות Google Tag Manager (GTM).
1. יצירת פרויקט חדש
- פותחים את Xcode.
- לוחצים על Create a new Xcode project.
- בוחרים באפשרות Single View Application.
- לוחצים על הבא.
- נותנים שם לפרויקט ובוחרים אפשרויות נוספות עבורו. שם הפרויקט ושם האפליקציה יהיו זהים לשם המוצר.
- לוחצים על הבא.
- בוחרים מיקום (ספרייה) של הפרויקט.
- לוחצים על יצירה.
2. התקנה של יחסי התלות של Google Tag Manager
- יוצאים מ-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.
- לוחצים על קובץ > חדש > קובץ.
- בקטע iOS > Source בוחרים באפשרות Header File (קובץ כותרת).
- לוחצים על הבא.
- מזינים את שם קובץ הכותרת
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 להגדרות ה-build:
- ב-Xcode, לוחצים על הפרויקט.
- לוחצים על Build Settings (הגדרות build) באזור העריכה.
- בוחרים באפשרות הכול ובאפשרות שילוב ומחפשים את האפשרות גישור.
- בעמודה השמאלית של השורה שמכילה את Objective-C Bridging Header, מזינים
BridgingHeader.h
.
4. הוספת מאגר תגים שמוגדר כברירת מחדל לפרויקט
לפני שמוסיפים קונטיינר ברירת מחדל לפרויקט, צריך להוריד קובץ בינארי של קונטיינר לנייד:
- נכנסים אל חשבון Google Tag Manager.
- בוחרים מאגר תגים לנייד.
- לוחצים על גרסאות בסרגל התפריטים.
- לוחצים על 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 בשם צפייה במסך.
- להוסיף קוד מעקב למסך.
א. יוצרים משתנה לאחסון מזהה המעקב
- נכנסים לחשבון Google Tag Manager.
- בוחרים מאגר תגים לנייד.
- בסרגל הניווט הימני לוחצים על משתנים.
- בקטע משתנים בהגדרת המשתמש, לוחצים על חדש.
- לוחצים על Untitled Variable (משתנה ללא שם), כדי להזין את שם המשתנה Tracking ID (מזהה לצורכי מעקב).
- בוחרים באפשרות Constant (קבוע) בתור סוג המשתנה.
- מזינים את מזהה המעקב (בפורמט
UA-XXXXXXXX-X
, כאשרX
היא ספרה) בתור הערך של המשתנה.משתמשים ב-UA-47605289-5
(למחיקה). - לוחצים על Create Variable (יצירת משתנה).
ב. יוצרים משתנה של שכבת נתונים בשם screenName
- נכנסים לחשבון Google Tag Manager.
- בוחרים מאגר נייד.
- בסרגל הניווט הימני לוחצים על משתנים.
- בקטע משתנים בהגדרת המשתמש, לוחצים על חדש.
- לוחצים על Untitled Variable כדי להזין את השם Screen Name.
- בוחרים באפשרות Data Layer Variable (משתנה של שכבת נתונים) בתור סוג המשתנה.
- מזינים את הערך screenName כשם משתנה של שכבת נתונים.
- לוחצים על הגדרת ערך ברירת מחדל.
- מזינים את ערך ברירת המחדל unknown screen.
- לוחצים על Create Variable (יצירת משתנה).
ג. יצירת תג GTM בשם 'צפייה במסך'
- נכנסים לחשבון Google Tag Manager.
- בוחרים מאגר נייד.
- בסרגל הניווט שמשמאל, לוחצים על Tags (תגים).
- לוחצים על הסמל ליצירת קובץ חדש.
- לוחצים על Untitled Tag (תג ללא שם) כדי להזין את שם התג Screen View (תצוגת מסך).
- בוחרים את המוצר Google Analytics.
- בוחרים באפשרות מזהה לצורכי מעקב מהרשימה.
- בוחרים באפשרות הצגת אפליקציה בתור סוג המעקב.
- לוחצים על הגדרות נוספות.
- לוחצים על שדות להגדרה.
- לוחצים על + הוספת שדה.
- בוחרים את שם השדה screenName ואת הערך שלו Screen Name.
- לוחצים על המשך.
- בקטע Fire On, בוחרים באפשרות Any Event.
- לוחצים על Create Tag.
צילום המסך של יצירת תג GTM של צפייה במסך.

ד. הוספת קוד מעקב למסך
- פותחים את הקובץ
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.
- בוחרים מאגר תגים לנייד.
- בסרגל הניווט הימני לוחצים על משתנים.
- בקטע משתנים בהגדרת המשתמש, לוחצים על חדש.
- לוחצים על Untitled Variable כדי להזין את השם Event Action.
- בוחרים באפשרות Data Layer Variable (משתנה של שכבת נתונים) בתור סוג המשתנה.
- מזינים את הערך eventAction כשם משתנה של שכבת נתונים.
- לוחצים על הגדרת ערך ברירת מחדל.
- מזינים את ערך ברירת המחדל unknown event.
- לוחצים על Create Variable (יצירת משתנה).
ב. יצירת משתנה אירוע מותאם אישית בשם 'אירוע'
- נכנסים אל חשבון Google Tag Manager.
- בוחרים מאגר נייד.
- בסרגל הניווט הימני לוחצים על משתנים.
- בקטע משתנים בהגדרת המשתמש, לוחצים על חדש.
- לוחצים על שם משתנה כדי להזין את שם המשתנה Event.
- בוחרים באפשרות אירוע מותאם אישית בתור סוג המשתנה.
- לוחצים על Create Variable (יצירת משתנה).
ג. יצירה של תג GTM עם הכותרת 'לחיצה על לחצן'
- נכנסים לחשבון Google Tag Manager.
- בוחרים מאגר נייד.
- בסרגל הניווט שמשמאל, לוחצים על Tags (תגים).
- לוחצים על הסמל ליצירת קובץ חדש.
- לוחצים על Untitled Tag (תג ללא שם) כדי להזין את שם התג Button Pressed (לחיצה על הלחצן).
- בוחרים את המוצר Google Analytics.
- בוחרים באפשרות מזהה לצורכי מעקב מהרשימה.
- בוחרים באפשרות אירוע בתור סוג המעקב.
- בוחרים בקטגוריה אירוע.
- בוחרים באפשרות פעולת אירוע.
- לוחצים על המשך.
- בקטע Fire On, בוחרים באפשרות Any Event.
- לוחצים על Create Tag.
צילום המסך של יצירת תג GTM מסוג לחיצה על לחצן.

ד. יצירת לחצן והוספת קוד למעקב אחרי לחיצה על הלחצן
- פותחים את פרויקט Xcode.
- פתיחת
Main.storyboard
. - לוחצים על הלחצן השמאלי העליון בסרגל הכלים של Xcode כדי לפתוח את אזור השירות (סרגל הצד השמאלי).
- בחלק התחתון של אזור הכלים,
לוחצים על הלחצן Show the Object library (הלחצן הכחול):
- מקישים על הלחצן בתיבת החיפוש.
- גוררים את הלחצן לבורדרסטורי ומשתחררים בפינה הימנית העליונה.
- לוחצים על הלחצן של Assistant Editor
בסרגל הכלים של Xcode.
- לוחצים לחיצה ארוכה על מקש Ctrl וגוררים את הלחצן, ואז מניחים אותו בתחתית הגדרת הכיתה
ViewController
. - בתיבת הדו-שיח, בוחרים באפשרות Action (פעולה), מזינים את שם הפונקציה buttonbuttoned ולוחצים על Connect.
הפונקציה הבאה תתווסף לסוף ההגדרה של הכיתה
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 יבנה ויפעיל את האפליקציה:
