Swift – przewodnik dla początkujących

Z tego przewodnika dowiesz się, jak utworzyć i wdrożyć aplikację na iOS w Swift. do śledzenia zdarzeń otwarcia ekranu i naciśnięcia przycisku za pomocą tagu Google Menedżer (GTM).

1. Utwórz nowy projekt

  1. Otwórz Xcode. utwórz nowy
  2. Kliknij Utwórz nowy projekt Xcode.
  3. Wybierz Single View Application (Aplikacja pojedynczego widoku). wybierz aplikację widoku pojedynczego
  4. Kliknij Dalej.
  5. Nazwij projekt i wybierz dla niego dodatkowe opcje. nazwę projektu i nazwa aplikacji będzie taka sama jak nazwa produktu.
    Wpisz nazwę produktu i inne opcje
  6. Kliknij Dalej.
  7. Wybierz lokalizację (katalog) projektu.
  8. Kliknij Utwórz.

2. Instalowanie zależności Menedżera tagów Google

  1. Zamknij Xcode.
  2. W terminalu uruchom następujące polecenie, aby zainstalować Cocoapody:
    $ sudo gem install cocoapods
  3. Przejdź do katalogu projektu.
  4. Uruchom to polecenie, aby utworzyć plik o nazwie Podfile:
    $ pod init
  5. Usuń znacznik komentarza z aplikacji Podfile w języku: use_frameworks! i dodaj pod 'GoogleTagManager' do celu:
  6. # Uncomment this line if you're using Swift
    use_frameworks!
    
    target 'GtmSwiftTutorial' do
      pod 'GoogleTagManager'
    end
  7. Aby pobrać i zainstalować Menedżera tagów Google, uruchom następujące polecenie: zależności w projekcie:
    $ pod install

    To polecenie tworzy też obszar roboczy GtmSwiftTutorial.xcworkspace. Od teraz możesz korzystać z tego obszaru roboczego do tworzenia aplikacji GtmSwiftTutorial.

3. Dodaj nagłówek łączący biblioteki Objective-C

Aby utworzyć plik nagłówka połączenia:

  1. Otwórz Xcode.
  2. Kliknij Plik > Nowe > Plik.
  3. W sekcji iOS > Źródło wybierz Header File (Plik nagłówka).
  4. Kliknij Dalej.
  5. Wpisz nazwę pliku nagłówka BridgingHeader.h.
    Utwórz plik nagłówka połączenia
  6. Kliknij Utwórz.
  7. Dodaj do pliku nagłówka te instrukcje 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 */

Aby dodać nagłówek połączenia Objective-C w ustawieniach kompilacji:

  1. Kliknij swój projekt w Xcode.
  2. W obszarze edycji kliknij Ustawienia kompilacji.
    Kliknij Ustawienia kompilacji.
  3. Wybierz Wszystkie i Połączone, a następnie wyszukaj łączenie.
    Połączenie wyszukiwania
  4. W prawej kolumnie wiersza zawierającym nagłówek Objective-C Bridging Header wpisz BridgingHeader.h.
    Dodaj BridgingHeader.h jako nagłówek mostu Objective-C.

4. Dodaj domyślny kontener do projektu

Zanim dodasz domyślny kontener do projektu, pobierz plik binarny kontenera mobilnego:

  1. Zaloguj się w Menedżera tagów Google.
  2. Wybierz kontener mobilny.
  3. Kliknij Wersje na pasku menu.
  4. Kliknij kolejno Działania > Pobierz z wybranego kontenera. wersji.
  5. Nazwa pobranego pliku to identyfikator kontenera. na przykład GTM-PT3L9Z.

Aby dodać domyślny plik binarny kontenera do projektu:

  1. Otwórz Xcode.
  2. Kliknij ikonę Findera w Docku.
  3. Kliknij folder Downoloads.
  4. Przeciągnij plik binarny kontenera do folderu Downloads i upuść do folderu głównego projektu Xcode.
  1. Otwórz plik AppDelegate.swift w Xcode.
  2. Spraw, aby klasa AppDelegate rozszerzyła Zajęcia TAGContainerOpenerNotifier:
    import UIKit
    
    @UIApplicationMain
    class AppDelegate: UIResponder, UIApplicationDelegate, TAGContainerOpenerNotifier {
      // ...
    }

    Po przedłużeniu zajęć otrzymasz dostęp do Type 'AppDelegate' does not conform to protocol 'TAGContainerOpenerNotifier' . Wykonując poniższe czynności, usuniesz ten błąd.

  3. Dodaj tę funkcję na dole definicji klasy AppDelegate:
    func containerAvailable(container: TAGContainer!) {
      container.refresh()
    }
  4. W funkcji application dodaj ten kod przed instrukcją 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. Śledź zdarzenie otwarcia ekranu

Aby śledzić zdarzenie otwarcia ekranu:

  1. Utwórz zmienną do przechowywania identyfikatora śledzenia.
  2. Utwórz zmienną warstwy danych o nazwie screenName.
  3. Utwórz tag Menedżera tagów Google o nazwie Wyświetlenie ekranu.
  4. Dodaj kod śledzenia ekranu.

a. Tworzenie zmiennej do przechowywania identyfikatora śledzenia

  1. Zaloguj się w Menedżerze tagów Google. koncie.
  2. Wybierz kontener mobilny.
  3. Na pasku nawigacyjnym po lewej stronie kliknij Zmienne.
  4. W sekcji Zmienne zdefiniowane przez użytkownika kliknij Nowa.
  5. Kliknij Zmienna bez nazwy, by wpisać nazwę zmiennej. Identyfikator śledzenia
  6. Jako typ zmiennej wybierz Stała.
  7. Wpisz identyfikator śledzenia (w formacie UA-XXXXXXXX-X, gdzie X to cyfra) jako wartość zmiennej.
    Użyj UA-47605289-5 (do usunięcia).
  8. Kliknij Utwórz zmienną.

b. Utwórz zmienną warstwy danych o nazwie screenName

  1. Zaloguj się w Menedżerze tagów Google. koncie.
  2. Wybierz kontener mobilny.
  3. Na pasku nawigacyjnym po lewej stronie kliknij Zmienne.
  4. W sekcji Zmienne zdefiniowane przez użytkownika kliknij Nowa.
  5. Kliknij Zmienna bez nazwy, aby wpisać tytuł. Nazwa ekranu.
  6. Jako typ zmiennej wybierz Zmienna warstwy danych.
  7. W polu Nazwa zmiennej warstwy danych wpisz screenName.
  8. Kliknij Ustaw wartość domyślną.
  9. Wpisz wartość domyślną unknown screen.
  10. Kliknij Utwórz zmienną.

c. Tworzenie tagu Menedżera tagów Google o nazwie Wyświetlenie ekranu

  1. Zaloguj się w Menedżerze tagów Google. koncie.
  2. Wybierz kontener mobilny.
  3. Na pasku nawigacyjnym po lewej stronie kliknij Tagi.
  4. Kliknij Nowa.
  5. Kliknij Tag bez nazwy, by wpisać nazwę tagu. Widok ekranu.
  6. Wybierz usługę Google Analytics.
  7. Z listy wybierz Identyfikator śledzenia.
  8. Jako Typ śledzenia wybierz Widok aplikacji.
  9. Kliknij Więcej ustawień.
  10. Kliknij Pola do ustawienia.
  11. Kliknij + Dodaj pole.
  12. Wybierz nazwę pola screenName i jego wartość Screen Name (Nazwa ekranu).
  13. Kliknij Dalej.
  14. W sekcji Warunki uruchamiania wybierz Dowolne zdarzenie.
  15. Kliknij Utwórz tag.

d. Dodaj kod śledzenia ekranu

  1. Otwórz plik ViewController.swift w Xcode.
  2. Zdefiniuj zmienną o nazwie dataLayer w tagu Zajęcia ViewController:
    var dataLayer: TAGDataLayer = TAGManager.instance().dataLayer
  3. W funkcji viewDidLoad() wypchnij OpenScreen do warstwy danych:
    dataLayer.push(["event": "OpenScreen", "screenName": "Home Screen"])

Definicja klasy ViewController wygląda tak:

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. Śledź zdarzenie naciśnięcia przycisku

Aby śledzić zdarzenie naciśnięcia przycisku:

  1. Utwórz zmienną warstwy danych o nazwie eventAction.
  2. Utwórz niestandardową zmienną zdarzenia o nazwie Zdarzenie.
  3. Utwórz tag Menedżera tagów Google o nazwie Przycisk Naciśnięty.
  4. Utwórz przycisk i dodaj kod do śledzenia naciśnięcia przycisku.

a. Utwórz zmienną warstwy danych o nazwie eventAction

  1. Zaloguj się w Menedżerze tagów Google. koncie.
  2. Wybierz kontener mobilny.
  3. Na pasku nawigacyjnym po lewej stronie kliknij Zmienne.
  4. W sekcji Zmienne zdefiniowane przez użytkownika kliknij Nowa.
  5. Kliknij Zmienna bez nazwy, aby wpisać tytuł. Akcja zdarzenia.
  6. Jako typ zmiennej wybierz Zmienna warstwy danych.
  7. W polu Nazwa zmiennej warstwy danych wpisz eventAction.
  8. Kliknij Ustaw wartość domyślną.
  9. Wpisz wartość domyślną nieznane zdarzenie.
  10. Kliknij Utwórz zmienną.

b. Utwórz niestandardową zmienną zdarzenia o nazwie Zdarzenie.

  1. Zaloguj się w Menedżerze tagów Google. koncie.
  2. Wybierz kontener mobilny.
  3. Na pasku nawigacyjnym po lewej stronie kliknij Zmienne.
  4. W sekcji Zmienne zdefiniowane przez użytkownika kliknij Nowa.
  5. Kliknij Zmienna bez nazwy, by wpisać nazwę zmiennej Zdarzenie.
  6. Jako typ zmiennej wybierz Zdarzenie niestandardowe.
  7. Kliknij Utwórz zmienną.

c. Utwórz tag Menedżera tagów Google o nazwie Naciśnięty przycisk

  1. Zaloguj się w Menedżerze tagów Google. koncie.
  2. Wybierz kontener mobilny.
  3. Na pasku nawigacyjnym po lewej stronie kliknij Tagi.
  4. Kliknij Nowa.
  5. Kliknij Tag bez nazwy, by wpisać nazwę tagu. Naciśnięty przycisk.
  6. Wybierz usługę Google Analytics.
  7. Z listy wybierz Identyfikator śledzenia.
  8. Jako Typ śledzenia wybierz Zdarzenie.
  9. Wybierz kategorię Zdarzenie.
  10. Wybierz Akcja zdarzenia.
  11. Kliknij Dalej.
  12. W sekcji Warunki uruchamiania wybierz Dowolne zdarzenie.
  13. Kliknij Utwórz tag.

d. Utwórz przycisk i dodaj kod do śledzenia naciśnięcia przycisku.

  1. Otwórz projekt Xcode.
  2. Otwórz pokój Main.storyboard.
  3. Kliknij górny prawy górny przycisk na pasku narzędzi Xcode, aby otworzyć obszaru użytkowego (prawy pasek boczny). Scenorys i obszar narzędziowy
  4. U dołu obszaru narzędziowego
    niebieski przycisk otwierający bibliotekę obiektów

    kliknij przycisk Pokaż bibliotekę obiektów (niebieski przycisk):

    Wyskakujące okienko biblioteki obiektów
  5. W polu wyszukiwania wpisz button.
    przycisk w bibliotece obiektów
  6. Przeciągnij Przycisk do scenorysu i upuść go na górze lewym rogu.
    Przeciągnij i upuść przycisk na scenorys
  7. Kliknij przycisk edytora asystenta Przycisk edytora Asystenta na pasku narzędzi Xcode.
  8. Trzymając naciśnięty klawisz Ctrl, przeciągnij przycisk i upuść go. na dole definicji klasy ViewController.
    Przeciągnij i upuść przycisk do definicji klasy ViewController
  9. W oknie wybierz połączenie Działanie i wpisz nazwę funkcji. buttonPressed (Naciśnij przycisk) i kliknij Połącz.
    Utwórz kod do obsługi zdarzenia naciśnięcia przycisku

    Spowoduje to dodanie poniższej funkcji na końcu funkcji Definicja klasy ViewController:

    @IBAction func buttonPressed(sender: AnyObject) {
    }

    Funkcja jest wykonywana przy każdym naciśnięciu przycisku.

  10. W funkcji buttonPressed dodaj ten kod do wypchnij zdarzenie ButtonPressed do warstwy dnia:
    @IBAction func buttonPressed(sender: AnyObject) {
      dataLayer.push(["event": "ButtonPressed", "eventAction": "Test Event"])
    }

8. Tworzenie i uruchamianie aplikacji

W Xcode kliknij Product > (Produkt >). Uruchom. Xcode skompiluje i uruchomi aplikację:

Zrzut ekranu przedstawiający uruchomioną aplikację