המדריך לתחילת העבודה עם Swift

במדריך הזה אנחנו מסבירים איך ליצור ולהטמיע אפליקציה ל-iOS ב-Swift כדי לעקוב אחרי אירועים בפתיחת מסך ולחיצה על לחצן באמצעות Google Tag מנהל (GTM).

1. יצירת פרויקט חדש

  1. פותחים את Xcode. ליצור פרויקט חדש
  2. לוחצים על יצירת פרויקט Xcode חדש.
  3. בוחרים באפשרות Single View Application (אפליקציה עם תצוגה יחידה). בחירת אפליקציה לתצוגה אחת
  4. לוחצים על הבא.
  5. נותנים שם לפרויקט ובוחרים עוד אפשרויות. שם הפרויקט שלכם שם האפליקציה יהיה זהה לשם המוצר.
    צריך להזין את שם המוצר ואפשרויות נוספות
  6. לוחצים על הבא.
  7. בוחרים את מיקום הפרויקט (ספרייה).
  8. לוחצים על יצירה.

2. הטמעת יחסי תלות של Google Tag Manager

  1. יציאה מ-Xcode.
  2. בטרמינל, מריצים את הפקודה הבאה כדי להתקין קוקואופודים:
    $ sudo gem install cocoapods
  3. שינוי לספריית הפרויקט.
  4. מריצים את הפקודה הבאה כדי ליצור קובץ בשם Podfile:
    $ pod init
  5. ב-Podfile, ביטול התגובה use_frameworks! ומוסיפים את pod 'GoogleTagManager' ליעד:
  6. # Uncomment this line if you're using Swift
    use_frameworks!
    
    target 'GtmSwiftTutorial' do
      pod 'GoogleTagManager'
    end
  7. כדי להוריד ולהתקין את Google Tag Manager (GTM), צריך להריץ את הפקודה הבאה ותלויות בפרויקט שלכם:
    $ pod install

    הפקודה הזו יוצרת גם את מרחב העבודה GtmSwiftTutorial.xcworkspace. מעכשיו, אפשר להשתמש במרחב העבודה הזה כדי לפתח את האפליקציה GtmSwiftTutorial.

3. הוספת כותרת גישור לספריות Objective-C

כדי ליצור קובץ כותרת גישור:

  1. פותחים את Xcode.
  2. לוחצים על קובץ > חדש > קובץ.
  3. בקטע iOS > מקור, בוחרים באפשרות קובץ כותרת.
  4. לוחצים על הבא.
  5. יש להזין את שם קובץ הכותרת BridgingHeader.h.
    יצירת קובץ כותרת גישור
  6. לוחצים על יצירה.
  7. מוסיפים את 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:

  1. ב-Xcode, לוחצים על הפרויקט.
  2. לוחצים על יצירת הגדרות באזור העריכה.
    לוחצים על Build Settings
  3. בוחרים באפשרות הכול ובאפשרות שילוב ומחפשים את האפשרות גישור.
    גישור בחיפוש
  4. בעמודה הימנית של השורה שמכילה את Objective-C Bridging Header, צריך להזין BridgingHeader.h.
    הוספת BridgingHeader.h ככותרת של גישור אובייקטי-C

4. הוספת מאגר ברירת מחדל לפרויקט

לפני שמוסיפים לפרויקט מאגר תגים שמוגדר כברירת מחדל, צריך להוריד קובץ בינארי של מאגר תגים לנייד:

  1. כניסה אל Google Tag Manager.
  2. בוחרים מאגר תגים לנייד.
  3. לוחצים על גרסאות בסרגל התפריטים.
  4. לוחצים על פעולות > הורדה במאגר התגים שנבחר .
  5. שם הקובץ שהורדתם הוא מזהה מאגר התגים, לדוגמה, GTM-PT3L9Z.

כדי להוסיף לפרויקט קובץ בינארי שמוגדר כברירת מחדל למאגר:

  1. פותחים את Xcode.
  2. לוחצים על הסמל של Finder במגש האפליקציות.
  3. לוחצים על התיקייה Downoloads.
  4. גוררים את קובץ הקונטיינר הבינארי לתיקייה Downloads ומשחררים אותו לתיקיית הבסיס של פרויקט ה-Xcode.
  1. ב-Xcode, פותחים את הקובץ AppDelegate.swift.
  2. הכיתה AppDelegate תרחיב את סיווג TAGContainerOpenerNotifier:
    import UIKit
    
    @UIApplicationMain
    class AppDelegate: UIResponder, UIApplicationDelegate, TAGContainerOpenerNotifier {
      // ...
    }

    אחרי שמאריכים את הכיתה, מקבלים Type 'AppDelegate' does not conform to protocol 'TAGContainerOpenerNotifier' שגיאה. השלב הבא יתקן את השגיאה הזו.

  3. מוסיפים את הפונקציה הבאה לחלק התחתון של הגדרת הכיתה AppDelegate:
    func containerAvailable(container: TAGContainer!) {
      container.refresh()
    }
  4. בפונקציה 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. מעקב אחר אירוע של פתיחת מסך

כדי לעקוב אחרי אירוע של פתיחת מסך:

  1. יוצרים משתנה כדי לשמור את המזהה לצורכי מעקב.
  2. יוצרים משתנה של שכבת נתונים בשם screenName.
  3. יוצרים תג GTM בשם צפייה במסך.
  4. להוסיף קוד מעקב למסך.

א. יוצרים משתנה כדי לשמור את המזהה לצורכי מעקב

  1. נכנסים אל Google Tag Manager. חשבון.
  2. בוחרים מאגר תגים לנייד.
  3. בסרגל הניווט הימני לוחצים על משתנים.
  4. בקטע משתנים בהגדרת המשתמש, לוחצים על חדש.
  5. לוחצים על משתנה ללא שם כדי להזין את שם המשתנה. מזהה לצורכי מעקב.
  6. בוחרים באפשרות קבוע כסוג המשתנה.
  7. מזינים את המזהה לצורכי מעקב (בפורמט UA-XXXXXXXX-X, כאשר X הוא ספרה) כערך של המשתנה.
    אפשר להשתמש ב-UA-47605289-5 (למחיקה).
  8. לוחצים על Create Variable (יצירת משתנה).

ב. יוצרים משתנה של שכבת נתונים בשם screenName

  1. נכנסים אל Google Tag Manager. חשבון.
  2. בוחרים מאגר תגים לנייד.
  3. בסרגל הניווט הימני לוחצים על משתנים.
  4. בקטע משתנים בהגדרת המשתמש, לוחצים על חדש.
  5. לוחצים על משתנה ללא שם כדי להזין את הכותרת. שם המסך.
  6. בוחרים את Data Layer Variable (משתנה של שכבת נתונים) כסוג המשתנה.
  7. מזינים את screenName בתור שם המשתנה של שכבת הנתונים.
  8. לוחצים על הגדרת ערך ברירת מחדל.
  9. מזינים את ערך ברירת המחדל unknown screen.
  10. לוחצים על Create Variable (יצירת משתנה).

ג. יצירת תג GTM בשם 'צפייה במסך'

  1. נכנסים אל Google Tag Manager. חשבון.
  2. בוחרים מאגר תגים לנייד.
  3. בסרגל הניווט שמשמאל, לוחצים על Tags (תגים).
  4. לוחצים על הסמל ליצירת קובץ חדש.
  5. לוחצים על תג ללא שם כדי להזין את שם התג. תצוגת מסך.
  6. בוחרים את המוצר Google Analytics.
  7. בוחרים באפשרות מזהה לצורכי מעקב מהרשימה.
  8. בוחרים באפשרות צפייה באפליקציה בתור סוג המעקב.
  9. לוחצים על הגדרות נוספות.
  10. לוחצים על שדות להגדרה.
  11. לוחצים על + הוספת שדה.
  12. בוחרים את שם השדה screenName ואת הערך שלו שם מסך.
  13. לוחצים על המשך.
  14. בקטע Fire On, בוחרים באפשרות Any Event (כל אירוע).
  15. לוחצים על Create Tag.

ד. הוספת קוד מעקב למסך

  1. פתיחת הקובץ ViewController.swift ב-Xcode.
  2. מגדירים משתנה בשם dataLayer בתוך הפרמטר סיווג ViewController:
    var dataLayer: TAGDataLayer = TAGManager.instance().dataLayer
  3. בפונקציה 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. אירוע שנלחץ על לחצן המעקב

כדי לעקוב אחרי אירוע שלחצתם עליו:

  1. יוצרים משתנה של שכבת נתונים בשם eventAction.
  2. יוצרים משתנה של אירוע מותאם אישית בשם Event.
  3. יוצרים תג GTM בשם Buttonלחיצה על לחצן.
  4. יוצרים לחצן ומוסיפים קוד כדי לעקוב אחרי לחיצה על הלחצן.

א. יוצרים משתנה של שכבת נתונים בשם eventAction

  1. נכנסים אל Google Tag Manager. חשבון.
  2. בוחרים מאגר תגים לנייד.
  3. בסרגל הניווט הימני לוחצים על משתנים.
  4. בקטע משתנים בהגדרת המשתמש, לוחצים על חדש.
  5. לוחצים על משתנה ללא שם כדי להזין את הכותרת. פעולה באירוע.
  6. בוחרים את Data Layer Variable (משתנה של שכבת נתונים) כסוג המשתנה.
  7. מזינים את eventAction בתור Data Layer Variable Name (שם המשתנה של שכבת הנתונים).
  8. לוחצים על הגדרת ערך ברירת מחדל.
  9. מזינים את ערך ברירת המחדל unknown event.
  10. לוחצים על Create Variable (יצירת משתנה).

ב. יוצרים משתנה של אירוע מותאם אישית בשם 'אירוע'

  1. נכנסים אל Google Tag Manager. חשבון.
  2. בוחרים מאגר תגים לנייד.
  3. בסרגל הניווט הימני לוחצים על משתנים.
  4. בקטע משתנים בהגדרת המשתמש, לוחצים על חדש.
  5. לוחצים על שם משתנה כדי להזין את שם המשתנה Event.
  6. בוחרים את סוג המשתנה אירוע מותאם אישית.
  7. לוחצים על Create Variable (יצירת משתנה).

ג. יצירה של תג GTM עם הכותרת 'לחיצה על לחצן'

  1. נכנסים אל Google Tag Manager. חשבון.
  2. בוחרים מאגר תגים לנייד.
  3. בסרגל הניווט שמשמאל, לוחצים על Tags (תגים).
  4. לוחצים על הסמל ליצירת קובץ חדש.
  5. לוחצים על תג ללא שם כדי להזין את שם התג. לחיצה על לחצן.
  6. בוחרים את המוצר Google Analytics.
  7. בוחרים באפשרות מזהה לצורכי מעקב מהרשימה.
  8. בוחרים באפשרות אירוע בתור סוג המעקב.
  9. בוחרים את קטגוריית אירוע.
  10. בוחרים באפשרות פעולת האירוע.
  11. לוחצים על המשך.
  12. בקטע Fire On, בוחרים באפשרות Any Event (כל אירוע).
  13. לוחצים על Create Tag.

ד. יצירת לחצן והוספת קוד שיעקוב אחרי לחיצה על הלחצן

  1. פותחים את פרויקט Xcode.
  2. פתיחת Main.storyboard.
  3. כדי לפתוח, לוחצים על הלחצן הימני העליון בסרגל הכלים של Xcode אזור השירות (סרגל הצד השמאלי). לוח סיפורים ואזור שימוש
  4. בחלק התחתון של אזור השירות,
    הלחצן הכחול לפתיחת ספריית האובייקטים

    לוחצים על הלחצן Show the Object library (הצגת ספריית האובייקטים) (הלחצן הכחול):

    חלון קופץ של ספריית אובייקטים
  5. מזינים לחצן בתיבת החיפוש.
    לחצן בספריית האובייקטים
  6. גוררים את לחצן ללוח הסטורי ומשחררים אותו בחלק העליון בפינה השמאלית העליונה.
    גוררים את הלחצן ומשחררים אותו בלוח הסטורי
  7. לוחצים על הלחצן של כלי העריכה ב-Assistant לחצן לעריכת Assistant בסרגל הכלים של Xcode.
  8. תוך כדי לחיצה ארוכה על מקש Ctrl, גוררים את הלחצן ומשחררים אותו לחלק התחתון של הגדרת הכיתה ViewController.
    גוררים את הלחצן ומשחררים אותו בהגדרת הכיתה ViewController
  9. בתיבת הדו-שיח, בוחרים בחיבור Action ומזינים את שם הפונקציה buttonPressed, ולחץ על buttonPressed.
    צריך ליצור קוד כדי לטפל באירוע בלחיצה על הלחצן

    הפעולה הזו מוסיפה את הפונקציה הבאה הגדרת הכיתה של ViewController:

    @IBAction func buttonPressed(sender: AnyObject) {
    }

    הפונקציה מופעלת בכל פעם שלוחצים על הלחצן.

  10. בפונקציה buttonPressed, מוסיפים את הקוד הבא כדי דוחפים את האירוע ButtonPressed לשכבת היום:
    @IBAction func buttonPressed(sender: AnyObject) {
      dataLayer.push(["event": "ButtonPressed", "eventAction": "Test Event"])
    }

8. יצירה והפעלה של אפליקציה

ב-Xcode, לוחצים על Product > הפעלה. Xcode יבנה ויפעיל את האפליקציה:

צילום מסך של האפליקציה שהושקה