Hướng dẫn này mô tả cách tạo và triển khai ứng dụng iOS trong Swift để theo dõi các sự kiện nhấn nút và mở màn hình bằng Trình quản lý thẻ của Google (GTM).
1. Tạo dự án mới
- Mở Xcode.
- Nhấp vào Create a new Xcode project (Tạo dự án Xcode mới).
- Chọn Single View Application (Ứng dụng có một thành phần hiển thị).
- Nhấp vào Tiếp theo.
- Đặt tên cho dự án và chọn các tuỳ chọn bổ sung cho dự án. Tên dự án và tên ứng dụng sẽ giống với tên sản phẩm.
- Nhấp vào Tiếp theo.
- Chọn vị trí (thư mục) của dự án.
- Nhấp vào Tạo.
2. Cài đặt các phần phụ thuộc của Trình quản lý thẻ của Google
- Thoát Xcode.
- Trong dòng lệnh, hãy chạy lệnh sau để cài đặt Cocoapods:
$ sudo gem install cocoapods
- Thay đổi sang thư mục dự án.
- Chạy lệnh sau đây để tạo một tệp có tên
Podfile
:$ pod init
- Trong
Podfile
, hãy bỏ ghi chúuse_frameworks!
và thêmpod 'GoogleTagManager'
vào mục tiêu: - Chạy lệnh sau để tải xuống và cài đặt các phần phụ thuộc Trình quản lý thẻ của Google (GTM) vào dự án của bạn:
$ pod install
Lệnh này cũng tạo không gian làm việc
GtmSwiftTutorial.xcworkspace
. Từ giờ, hãy sử dụng không gian làm việc này để phát triển ứng dụngGtmSwiftTutorial
.
# Uncomment this line if you're using Swift use_frameworks! target 'GtmSwiftTutorial' do pod 'GoogleTagManager' end
3. Thêm tiêu đề cầu nối cho thư viện Objective-C
Cách tạo tệp tiêu đề cầu nối:
- Mở Xcode.
- Nhấp vào File > New > File (Tệp > Mới > Tệp).
- Trong phần iOS > Source (iOS > Nguồn), hãy chọn Header File (Tệp tiêu đề).
- Nhấp vào Tiếp theo.
- Nhập tên tệp tiêu đề
BridgingHeader.h
.
- Nhấp vào Tạo.
- Thêm các câu lệnh
import
này vào tệp tiêu đề:#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 */
Cách thêm tiêu đề cầu nối GOAL-C trong chế độ cài đặt bản dựng:
- Trong Xcode, hãy nhấp vào dự án của bạn.
- Nhấp vào Build Settings (Cài đặt bản dựng) trong khu vực trình chỉnh sửa.
- Chọn Tất cả và Kết hợp rồi tìm kiếm cầu nối.
- Trên cột bên phải của hàng chứa Tiêu đề cầu nối Mục tiêu-C, hãy nhập
BridgingHeader.h
.
4. Thêm vùng chứa mặc định vào dự án
Trước khi thêm vùng chứa mặc định vào dự án, hãy tải xuống tệp nhị phân vùng chứa dành cho thiết bị di động:
- Đăng nhập vào tài khoản Trình quản lý thẻ của Google.
- Chọn vùng chứa dành cho thiết bị di động.
- Nhấp vào Phiên bản trong thanh trình đơn.
- Nhấp vào Thao tác > Tải xuống trên phiên bản vùng chứa đã chọn.
GTM-PT3L9Z
.
Cách thêm tệp nhị phân của vùng chứa mặc định vào dự án:
- Mở Xcode.
- Nhấp vào biểu tượng Finder (Trình tìm kiếm) trên thanh Dock.
- Nhấp vào thư mục
Downoloads
. - Kéo tệp nhị phân vùng chứa vào thư mục
Downloads
rồi thả tệp đó vào thư mục gốc của dự án Xcode.
5. Liên kết Trình quản lý thẻ của Google với ứng dụng
- Trong Xcode, hãy mở tệp
AppDelegate.swift
. - Yêu cầu lớp
AppDelegate
mở rộng lớpTAGContainerOpenerNotifier
:import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate, TAGContainerOpenerNotifier { // ... }
Sau khi mở rộng lớp này, bạn sẽ gặp lỗi
Type 'AppDelegate' does not conform to protocol 'TAGContainerOpenerNotifier'
. Bước sau đây sẽ khắc phục lỗi này. - Thêm hàm sau vào cuối phần định nghĩa lớp
AppDelegate
:func containerAvailable(container: TAGContainer!) { container.refresh() }
- Trong hàm
application
, hãy thêm mã sau đây trước câu lệnhreturn 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. Theo dõi sự kiện mở màn hình
Cách theo dõi sự kiện mở màn hình:
- Tạo một biến để lưu trữ mã theo dõi.
- Tạo một biến lớp dữ liệu có tên là screenName.
- Tạo thẻ GTM có tiêu đề Chế độ xem màn hình.
- Thêm mã theo dõi màn hình.
a. Tạo một biến để lưu trữ mã theo dõi
- Đăng nhập vào tài khoản Trình quản lý thẻ của Google.
- Chọn vùng chứa dành cho thiết bị di động.
- Trên thanh điều hướng bên trái, hãy nhấp vào Biến.
- Trong Biến do người dùng xác định, hãy nhấp vào Mới.
- Nhấp vào Untitled Variable (Biến chưa có tên) để nhập tên biến Tracking ID (Mã theo dõi).
- Chọn Constant (Hằng số) làm loại biến.
- Nhập mã theo dõi (ở dạng
UA-XXXXXXXX-X
, trong đóX
là một chữ số) làm giá trị của biến.Sử dụngUA-47605289-5
(sẽ bị xoá). - Nhấp vào Tạo biến.
b. Tạo một biến lớp dữ liệu có tên screenName
- Đăng nhập vào tài khoản Trình quản lý thẻ của Google.
- Chọn vùng chứa dành cho thiết bị di động.
- Trên thanh điều hướng bên trái, hãy nhấp vào Biến.
- Trong Biến do người dùng xác định, hãy nhấp vào Mới.
- Nhấp vào Untitled Variable (Biến không có tiêu đề) để nhập tiêu đề Screen Name (Tên người dùng).
- Chọn Biến lớp dữ liệu làm loại biến.
- Nhập screenName làm Tên biến lớp dữ liệu.
- Nhấp vào Đặt giá trị mặc định.
- Nhập giá trị mặc định màn hình không xác định.
- Nhấp vào Tạo biến.
c. Tạo thẻ GTM có tiêu đề Chế độ xem màn hình
- Đăng nhập vào tài khoản Trình quản lý thẻ của Google.
- Chọn một vùng chứa thiết bị di động.
- Trên thanh điều hướng bên trái, hãy nhấp vào Thẻ.
- Nhấp vào Mới.
- Nhấp vào Thẻ không có tiêu đề để nhập tên thẻ Chế độ xem màn hình.
- Chọn sản phẩm Google Analytics.
- Chọn Mã theo dõi trong danh sách.
- Chọn Chế độ xem ứng dụng làm Loại theo dõi.
- Nhấp vào Chế độ cài đặt khác.
- Nhấp vào Các trường cần đặt.
- Nhấp vào + Thêm trường.
- Chọn tên trường screenName và giá trị của trường đó là Screen Name.
- Nhấp vào Tiếp tục.
- Trong mục Fire On (Kích hoạt khi), hãy chọn Any Event (Mọi sự kiện).
- Nhấp vào Tạo thẻ.
d. Thêm mã theo dõi màn hình
- Mở tệp
ViewController.swift
trong Xcode. - Xác định một biến có tên là
dataLayer
bên trong lớpViewController
:var dataLayer: TAGDataLayer = TAGManager.instance().dataLayer
- Trong hàm
viewDidLoad()
, hãy đẩy sự kiệnOpenScreen
vào lớp dữ liệu:dataLayer.push(["event": "OpenScreen", "screenName": "Home Screen"])
Định nghĩa của lớp ViewController
sẽ có dạng như sau:
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. Theo dõi sự kiện nhấn nút
Cách theo dõi sự kiện nhấn nút:
- Tạo một biến lớp dữ liệu có tên là eventAction.
- Tạo một biến sự kiện tuỳ chỉnh có tên là Event (Sự kiện).
- Tạo thẻ GTM có tiêu đề Button Pressed (Nhấn nút).
- Tạo một nút và thêm mã để theo dõi việc nhấn nút.
a. Tạo một biến lớp dữ liệu có tên là eventAction
- Đăng nhập vào tài khoản Trình quản lý thẻ của Google.
- Chọn một vùng chứa thiết bị di động.
- Trên thanh điều hướng bên trái, hãy nhấp vào Biến.
- Trong Biến do người dùng xác định, hãy nhấp vào Mới.
- Nhấp vào Không có tiêu đề để nhập tiêu đề Hành động sự kiện.
- Chọn Biến lớp dữ liệu làm loại biến.
- Nhập eventAction làm Tên biến lớp dữ liệu.
- Nhấp vào Đặt giá trị mặc định.
- Nhập giá trị mặc định sự kiện không xác định.
- Nhấp vào Tạo biến.
b. Tạo biến sự kiện tuỳ chỉnh có tên là Event
- Đăng nhập vào tài khoản Trình quản lý thẻ của Google.
- Chọn vùng chứa dành cho thiết bị di động.
- Trên thanh điều hướng bên trái, hãy nhấp vào Biến.
- Trong Biến do người dùng xác định, hãy nhấp vào Mới.
- Nhấp vào Untitled Variable (Biến chưa có tên) để nhập tên biến Event (Sự kiện).
- Chọn loại biến là Sự kiện tuỳ chỉnh.
- Nhấp vào Tạo biến.
c. Tạo thẻ GTM có tiêu đề Nút nhấn
- Đăng nhập vào tài khoản Trình quản lý thẻ của Google.
- Chọn vùng chứa dành cho thiết bị di động.
- Trên thanh điều hướng bên trái, hãy nhấp vào Thẻ.
- Nhấp vào Mới.
- Nhấp vào Untitled Tag (Thẻ không tên) để nhập tên thẻ Button Pressed (Nút đã nhấn).
- Chọn sản phẩm Google Analytics.
- Chọn Mã theo dõi trong danh sách.
- Chọn Sự kiện làm Loại kênh.
- Chọn danh mục Sự kiện.
- Chọn Event Action (Thao tác sự kiện).
- Nhấp vào Tiếp tục.
- Trong mục Fire On (Kích hoạt khi), hãy chọn Any Event (Mọi sự kiện).
- Nhấp vào Tạo thẻ.
d. Tạo một nút và thêm mã để theo dõi việc nhấn nút
- Mở dự án Xcode.
- Mở
Main.storyboard
. - Nhấp vào nút trên cùng bên phải trong thanh công cụ Xcode để mở khu vực tiện ích (thanh bên phải).
- Ở cuối khu vực tiện ích,
nhấp vào nút Show the Object library (Hiển thị thư viện đối tượng) (nút màu xanh dương):
- Nhập nút vào hộp tìm kiếm.
- Kéo Button (Nút) vào bảng phân cảnh rồi thả vào góc trên cùng bên trái.
- Nhấp vào nút trình chỉnh sửa trợ lý trên thanh công cụ Xcode.
- Trong khi giữ phím Ctrl, hãy kéo nút này rồi thả vào cuối phần định nghĩa lớp
ViewController
.
- Trong hộp thoại, hãy chọn kết nối Action (Hành động), nhập tên hàm buttonpressed rồi nhấp vào Connect (Kết nối).
Thao tác này sẽ thêm hàm sau vào cuối phần định nghĩa lớp
ViewController
:@IBAction func buttonPressed(sender: AnyObject) { }
Hàm này được thực thi mỗi khi người dùng nhấn nút.
- Trong hàm
buttonPressed
, hãy thêm mã sau để đẩy sự kiệnButtonPressed
vào lớp ngày:@IBAction func buttonPressed(sender: AnyObject) { dataLayer.push(["event": "ButtonPressed", "eventAction": "Test Event"]) }
8. Tạo và chạy ứng dụng
Trong Xcode, hãy nhấp vào Product > Run (Sản phẩm > Chạy). Xcode sẽ tạo bản dựng và chạy ứng dụng: