Startleitfaden für Swift

In diesem Leitfaden wird beschrieben, wie Sie eine iOS-App in Swift erstellen und implementieren. um mit dem Google-Tag Ereignisse zu erfassen, in denen das Öffnen des Bildschirms oder das Betätigen einer Schaltfläche erfasst wird Manager (GTM) aus.

1. Erstellen Sie ein neues Projekt

  1. Öffnen Sie Xcode. erstellen Sie ein neues Projekt
  2. Klicken Sie auf Create a new Xcode project (Neues Xcode-Projekt erstellen).
  3. Wählen Sie Single View Application (Anwendung mit Einzelansicht) aus. Einzelansichtsanwendung auswählen
  4. Klicken Sie auf Weiter.
  5. Benennen Sie Ihr Projekt und wählen Sie weitere Optionen dafür aus. Den Projektnamen und App-Name mit dem Produktnamen identisch.
    Produktnamen und andere Optionen eingeben
  6. Klicken Sie auf Weiter.
  7. Wählen Sie einen Projektspeicherort (Verzeichnis) aus.
  8. Klicken Sie auf Erstellen.

2. Google Tag Manager-Abhängigkeiten installieren

  1. Beenden Sie Xcode.
  2. Führen Sie zur Installation in einem Terminal den folgenden Befehl aus: CocoaPods:
    $ sudo gem install cocoapods
  3. Wechseln Sie zu Ihrem Projektverzeichnis.
  4. Führen Sie den folgenden Befehl aus, um eine Datei mit dem Namen Podfile zu erstellen:
    $ pod init
  5. Kommentar von use_frameworks! in Podfile entfernen und fügen Sie pod 'GoogleTagManager' zum Ziel hinzu:
  6. # Uncomment this line if you're using Swift
    use_frameworks!
    
    target 'GtmSwiftTutorial' do
      pod 'GoogleTagManager'
    end
  7. Führen Sie den folgenden Befehl aus, um Google Tag Manager (GTM) herunterzuladen und zu installieren. zu Ihrem Projekt hinzufügen:
    $ pod install

    Mit diesem Befehl wird auch der Arbeitsbereich GtmSwiftTutorial.xcworkspace erstellt. Nutzen Sie ab sofort diesen Arbeitsbereich, um die GtmSwiftTutorial-App zu entwickeln.

3. Bridging-Header für Objective-C-Bibliotheken hinzufügen

So erstellen Sie eine Bridging-Header-Datei:

  1. Öffnen Sie Xcode.
  2. Klicken Sie auf Datei > Neu > Datei:
  3. Unter iOS > Source (Quelle): Wählen Sie Header File (Header-Datei) aus.
  4. Klicken Sie auf Weiter.
  5. Geben Sie den Namen der Header-Datei BridgingHeader.h ein.
    Bridging-Header-Datei erstellen
  6. Klicken Sie auf Erstellen.
  7. Fügen Sie der Headerdatei die folgenden import-Anweisungen hinzu:
    #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 */

So fügen Sie den Build-Einstellungen den Objective-C-Bridging-Header hinzu:

  1. Klicken Sie in Xcode auf Ihr Projekt.
  2. Klicken Sie im Editorbereich auf Build Settings (Build-Einstellungen).
    Klicken Sie auf Build-Einstellungen.
  3. Wählen Sie Alle und Kombiniert aus und suchen Sie nach Bridging.
    Brücken bei der Suche
  4. Gehen Sie in der rechten Spalte der Zeile mit dem Objective-C-Bridging-Header wie folgt vor: Geben Sie BridgingHeader.h ein.
    BridgingHeader.h als Objective-C-Bridging-Header hinzufügen

4. Dem Projekt einen Standardcontainer hinzufügen

Bevor Sie Ihrem Projekt einen Standardcontainer hinzufügen, laden Sie eines mobilen Container-Binärprogramms:

  1. Melden Sie sich in Ihrem an. Google Tag Manager-Konto.
  2. Wählen Sie einen mobilen Container aus.
  3. Klicken Sie in der Menüleiste auf Versionen.
  4. Klicken Sie auf Aktionen > Für den ausgewählten Container herunterladen Version.
  5. Der Name der heruntergeladenen Datei ist die Container-ID, z. B. GTM-PT3L9Z.

So fügen Sie Ihrem Projekt eine Standard-Containerbinärdatei hinzu:

  1. Öffnen Sie Xcode.
  2. Klicken Sie im Dock auf das Finder-Symbol.
  3. Klicken Sie auf den Ordner Downoloads.
  4. Ziehen Sie die Binärdatei des Containers in den Ordner Downloads und legen Sie sie ab im Stammordner Ihres Xcode-Projekts.
  1. Öffnen Sie die Datei AppDelegate.swift in Xcode.
  2. Lassen Sie die Klasse AppDelegate die Klasse TAGContainerOpenerNotifier:
    import UIKit
    
    @UIApplicationMain
    class AppDelegate: UIResponder, UIApplicationDelegate, TAGContainerOpenerNotifier {
      // ...
    }

    Nachdem du den Kurs verlängert hast, erhältst du Type 'AppDelegate' does not conform to protocol 'TAGContainerOpenerNotifier' Fehler. Dieser Fehler wird mit dem folgenden Schritt behoben.

  3. Fügen Sie am Ende der Klassendefinition AppDelegate die folgende Funktion ein:
    func containerAvailable(container: TAGContainer!) {
      container.refresh()
    }
  4. Fügen Sie in der Funktion application den folgenden Code hinzu: vor der return true-Anweisung hinzu:
    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. Ereignis „Bildschirm öffnen“ verfolgen

So erfassen Sie ein Ereignis vom Typ „Bildschirm öffnen“:

  1. Erstellen Sie eine Variable zum Speichern der Tracking-ID.
  2. Erstellen Sie eine Datenschichtvariable mit dem Namen screenName.
  3. Erstellen Sie ein GTM-Tag mit dem Namen Bildschirmaufruf.
  4. Fügen Sie einen Tracking-Code für den Bildschirm hinzu.

a. Variable zum Speichern der Tracking-ID erstellen

  1. Melden Sie sich in Google Tag Manager an. Konto.
  2. Wählen Sie einen mobilen Container aus.
  3. Klicken Sie in der linken Navigationsleiste auf Variablen.
  4. Klicken Sie unter Benutzerdefinierte Variablen auf Neu.
  5. Klicken Sie auf Unbenannte Variable, um den Variablennamen einzugeben. Tracking-ID:
  6. Wählen Sie als Variablentyp Konstante aus.
  7. Geben Sie die Tracking-ID im Format UA-XXXXXXXX-X, wobei X eine Ziffer) als Wert der Variablen ist.
    UA-47605289-5 (zu löschen) verwenden.
  8. Klicken Sie auf Variable erstellen.

b. Datenschichtvariable namens „screenName“ erstellen

  1. Melden Sie sich in Google Tag Manager an. Konto.
  2. Wählen Sie einen mobilen Container aus.
  3. Klicken Sie in der linken Navigationsleiste auf Variablen.
  4. Klicken Sie unter Benutzerdefinierte Variablen auf Neu.
  5. Klicken Sie auf Unbenannte Variable, um den Titel einzugeben. Bildschirmname:
  6. Wählen Sie als Variablentyp Datenschichtvariable aus.
  7. Geben Sie unter Name der Datenschichtvariablen den Wert screenName ein.
  8. Klicken Sie auf Standardwert festlegen.
  9. Geben Sie den Standardwert Unbekannter Bildschirm ein.
  10. Klicken Sie auf Variable erstellen.

c. Erstellen Sie ein GTM-Tag mit der Bezeichnung „Bildschirmaufruf“.

  1. Melden Sie sich in Google Tag Manager an. Konto.
  2. Wählen Sie einen mobilen Container aus.
  3. Klicken Sie in der linken Navigationsleiste auf Tags.
  4. Klicken Sie auf Neu.
  5. Klicken Sie auf Unbenanntes Tag, um den Tag-Namen einzugeben. Bildschirmaufruf:
  6. Wählen Sie das Produkt Google Analytics aus.
  7. Wählen Sie Tracking-ID aus der Liste aus.
  8. Wählen Sie als Tracking-Typ die Option App-Datenansicht aus.
  9. Klicken Sie auf Weitere Einstellungen.
  10. Klicken Sie auf Festzulegende Felder.
  11. Klicken Sie auf + Feld hinzufügen.
  12. Wählen Sie den Feldnamen screenName und den Wert Bildschirmname aus.
  13. Klicken Sie auf Weiter.
  14. Wählen Sie unter Auslösen bei die Option Beliebiges Ereignis aus.
  15. Klicken Sie auf Tag erstellen.

d. Bildschirm-Tracking-Code hinzufügen

  1. Öffnen Sie die Datei ViewController.swift in Xcode.
  2. Definieren Sie eine Variable mit dem Namen dataLayer im Klasse ViewController:
    var dataLayer: TAGDataLayer = TAGManager.instance().dataLayer
  3. Übertragen Sie in der Funktion viewDidLoad() den Parameter OpenScreen an die Datenschicht:
    dataLayer.push(["event": "OpenScreen", "screenName": "Home Screen"])

Die Definition der ViewController-Klasse sieht so aus:

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. Ereignis, bei dem die Schaltfläche zum Tracken gedrückt wurde

So erfassen Sie ein Ereignis, bei dem eine Schaltfläche gedrückt wurde:

  1. Erstellen Sie eine Datenschichtvariable mit dem Namen eventAction.
  2. Erstellen Sie eine benutzerdefinierte Ereignisvariable mit dem Namen Ereignis.
  3. Erstellen Sie ein GTM-Tag mit dem Titel Button Pressed.
  4. Erstellen Sie eine Schaltfläche und fügen Sie Code hinzu, um zu erfassen, dass die Schaltfläche gedrückt wird.

a. Erstellen Sie die Datenschichtvariable „eventAction“.

  1. Melden Sie sich in Google Tag Manager an. Konto.
  2. Wählen Sie einen mobilen Container aus.
  3. Klicken Sie in der linken Navigationsleiste auf Variablen.
  4. Klicken Sie unter Benutzerdefinierte Variablen auf Neu.
  5. Klicken Sie auf Unbenannte Variable, um den Titel einzugeben. Ereignisaktion:
  6. Wählen Sie als Variablentyp Datenschichtvariable aus.
  7. Geben Sie unter Name der Datenschichtvariablen den Wert eventAction ein.
  8. Klicken Sie auf Standardwert festlegen.
  9. Geben Sie den Standardwert unbekanntes Ereignis ein.
  10. Klicken Sie auf Variable erstellen.

b. Benutzerdefinierte Ereignisvariable namens „Ereignis“ erstellen

  1. Melden Sie sich in Google Tag Manager an. Konto.
  2. Wählen Sie einen mobilen Container aus.
  3. Klicken Sie in der linken Navigationsleiste auf Variablen.
  4. Klicken Sie unter Benutzerdefinierte Variablen auf Neu.
  5. Klicken Sie auf Unbenannte Variable, um den Variablennamen Ereignis einzugeben.
  6. Wählen Sie als Variablentyp Benutzerdefiniertes Ereignis aus.
  7. Klicken Sie auf Variable erstellen.

c. Erstellen Sie ein GTM-Tag mit dem Titel „Button Pressed“

  1. Melden Sie sich in Google Tag Manager an. Konto.
  2. Wählen Sie einen mobilen Container aus.
  3. Klicken Sie in der linken Navigationsleiste auf Tags.
  4. Klicken Sie auf Neu.
  5. Klicken Sie auf Unbenanntes Tag, um den Tag-Namen einzugeben. Taste gedrückt halten.
  6. Wählen Sie das Produkt Google Analytics aus.
  7. Wählen Sie Tracking-ID aus der Liste aus.
  8. Wählen Sie als Tracking-Typ die Option Ereignis aus.
  9. Wählen Sie die Kategorie Ereignis aus.
  10. Wählen Sie Ereignisaktion aus.
  11. Klicken Sie auf Weiter.
  12. Wählen Sie unter Auslösen bei die Option Beliebiges Ereignis aus.
  13. Klicken Sie auf Tag erstellen.

d. Erstellen Sie eine Schaltfläche und fügen Sie Code hinzu, um zu erfassen, dass die Schaltfläche gedrückt wird

  1. Öffnen Sie Ihr Xcode-Projekt.
  2. Öffnen Sie Main.storyboard.
  3. Klicken Sie auf die Schaltfläche ganz oben rechts in der Xcode-Symbolleiste, um Dienstprogrammbereich (rechte Seitenleiste). Storyboard- und Dienstprogrammbereich
  4. Unten im Versorgungsbereich
    blaue Schaltfläche zum Öffnen der Objektbibliothek

    Klicken Sie auf die Schaltfläche Objektbibliothek anzeigen (blaue Schaltfläche):

    Pop-up-Fenster mit Objektbibliothek
  5. Klicken Sie im Suchfeld auf die Eingabetaste.
    Schaltfläche in der Objektbibliothek
  6. Ziehen Sie Button in das Storyboard und legen Sie es oben ab. in der linken Ecke.
    Ziehen Sie die Schaltfläche per Drag-and-drop in das Storyboard.
  7. Auf die Schaltfläche für den Assistenten klicken Schaltfläche für den Assistenten in der Xcode-Symbolleiste.
  8. Halten Sie die Strg-Taste gedrückt und ziehen Sie die Schaltfläche an die gewünschte Stelle. unten in die ViewController-Klassendefinition ein.
    Ziehen Sie die Schaltfläche per Drag-and-drop in die Definition der ViewController-Klasse.
  9. Wählen Sie im Dialogfeld die Option Action (Aktion) aus und geben Sie den Funktionsnamen ein. buttonPressed und dann auf Verbinden.
    Code für die Verarbeitung des Schaltflächenereignisses erstellen

    Damit wird am Ende des Definition der ViewController-Klasse:

    @IBAction func buttonPressed(sender: AnyObject) {
    }

    Die Funktion wird jedes Mal ausgeführt, wenn die Schaltfläche gedrückt wird.

  10. Fügen Sie in der Funktion buttonPressed den folgenden Code Übertragen Sie das Ereignis ButtonPressed an die Ebene des Tages:
    @IBAction func buttonPressed(sender: AnyObject) {
      dataLayer.push(["event": "ButtonPressed", "eventAction": "Test Event"])
    }

8. App erstellen und ausführen

Klicken Sie in Xcode auf Product > Ausführen. Xcode erstellt die App und führt sie aus:

Screenshot der gestarteten App