Bước 3: Bắt đầu đo lường lượt chuyển đổi trên thiết bị bằng Google Analytics
| Giới thiệu: Đo lường lượt chuyển đổi từ quảng cáo trên iOS |
| Bước 1: Triển khai trải nghiệm đăng nhập |
| Bước 2: Tích hợp Google Analytics |
|
Bước 3: Bắt đầu đo lường lượt chuyển đổi trên thiết bị bằng cách sử dụng Google Analytics |
| Bước 4: Khắc phục sự cố và xử lý các vấn đề thường gặp |
Giờ đây, bạn có thể thu thập địa chỉ email và số điện thoại của người dùng, đồng thời ứng dụng của bạn có Google Analytics cho Firebase SDK. Bạn có thể sử dụng hai thông tin này để bắt đầu đo lường lượt chuyển đổi.
Gọi API
Gọi API đo lường lượt chuyển đổi bằng địa chỉ email hoặc số điện thoại đã được đồng ý từ Bước 1, được dùng để đo lường lượt chuyển đổi từ quảng cáo mà không cho phép bất kỳ thông tin nhận dạng cá nhân nào rời khỏi thiết bị của người dùng.
Có hai cách để bắt đầu đo lường:
Sử dụng địa chỉ email hoặc số điện thoại
Swift
Nhập mô-đun FirebaseAnalytics và truyền địa chỉ email hoặc số điện thoại vào API initiateOnDeviceConversionMeasurement().
import FirebaseAnalytics // ... // If you're using an email address.... Analytics.initiateOnDeviceConversionMeasurement(emailAddress: "example@gmail.com") // If you're using a phone number.... Analytics.initiateOnDeviceConversionMeasurement(phoneNumber: "+15555555555")
Objective-C
Nhập mô-đun FirebaseAnalytics và truyền địa chỉ email vào API initiateOnDeviceConversionMeasurementWithEmailAddress: hoặc số điện thoại vào API initiateOnDeviceConversionMeasurementWithPhoneNumber:.
@import FirebaseAnalytics; // ... // If you're using an email address.... [FIRAnalytics initiateOnDeviceConversionMeasurementWithEmailAddress:@"example@gmail.com"]; // If you're using a phone number.... [FIRAnalytics initiateOnDeviceConversionMeasurementWithPhoneNumber:@"+15555555555"];
Unity
Nhập không gian tên Firebase.Analytics và truyền địa chỉ email vào API InitiateOnDeviceConversionMeasurementWithEmailAddress() hoặc số điện thoại vào API InitiateOnDeviceConversionMeasurementWithPhoneNumber():
using Firebase.Analytics; // ... // If you're using an email address.... FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithEmailAddress("example@gmail.com"); // If you're using a phone number.... FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithPhoneNumber("+15555555555");
Các phương pháp hay nhất để gọi API
Để đảm bảo kết quả đo lường lượt chuyển đổi trên thiết bị được thực hiện một cách chính xác và liên tục, hãy làm theo một trong các bước sau:
Gọi trên mọi bản cập nhật ứng dụng (Nên dùng)
Google Analytics cho Firebase SDK phiên bản 12.1.0 trở lên có những điểm cải tiến đối với hoạt động đo lường lượt chuyển đổi trên thiết bị. Để đảm bảo những điểm cải tiến này áp dụng cho tất cả người dùng (kể cả những người đã đăng nhập trước khi ứng dụng của bạn được cập nhật), bạn cần gọi lại API initiateOnDeviceConversionMeasurement sau khi ứng dụng cập nhật.
Cụ thể, những người dùng đã đăng nhập trước khi ứng dụng của bạn cập nhật lên SDK phiên bản 12.1.0 sẽ không được đưa vào phạm vi đo lường nâng cao cho đến khi API initiateOnDeviceConversionMeasurement được gọi lại cho họ. Nếu không có quy trình kiểm tra bản cập nhật ứng dụng, điều này sẽ chỉ xảy ra nếu họ đăng xuất rồi đăng nhập lại.
Tốt nhất là bạn nên gọi API này cho người dùng đã đăng nhập ít nhất một lần cho mỗi phiên bản ứng dụng. Bạn có thể triển khai một quy trình kiểm tra khi khởi chạy ứng dụng để chỉ gọi API khi phiên bản ứng dụng đã thay đổi kể từ lần gọi gần nhất.
Swift
// On app launch if the app version has changed, call the API with the first-party data // (for example: email address, phone number, hashed email address, hashed phone number). let cachedAppVersion = UserDefaults.standard.string(forKey: "cachedAppVersion") let currentAppVersion = Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String if cachedAppVersion != currentAppVersion { let hashedEmailAddress = ... Analytics.initiateOnDeviceConversionMeasurement(hashedEmailAddress: hashedEmailAddress) UserDefaults.standard.set(currentAppVersion, forKey: "cachedAppVersion") }
Objective-C
// On app launch if the app version has changed, call the API with the first-party data // (for example: email address, phone number, hashed email address, hashed phone number). NSString *cachedAppVersion = [[NSUserDefaults standardUserDefaults] stringForKey:@"cachedAppVersion"]; NSString *currentAppVersion = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"]; if (![cachedAppVersion isEqualToString:currentAppVersion]) { NSString *hashedEmailAddress = ... [FIRAnalytics initiateOnDeviceConversionMeasurementWithHashedEmailAddress:hashedEmailAddress]; [[NSUserDefaults standardUserDefaults] setObject:currentAppVersion forKey:@"cachedAppVersion"]; }
Unity
// On app launch if the app version has changed, call the API with the first-party data // (for example: email address, phone number, hashed email address, hashed phone number). string cachedAppVersion = PlayerPrefs.GetString("cached_app_version", ""); string currentAppVersion = Application.version; if (cachedAppVersion != currentAppVersion) { byte[] hashedEmailAddress = ... FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithHashedEmailAddress( hashedEmailAddress); PlayerPrefs.SetString("cached_app_version", currentAppVersion); PlayerPrefs.Save(); }
Gọi ngay sau khi đăng nhập
Luôn gọi API initiateOnDeviceConversionMeasurement ngay sau khi người dùng đăng nhập thành công hoặc đăng ký email hoặc số điện thoại của họ.
Những điều cần cân nhắc về thời gian đối với lượt đăng ký mới
Nếu một sự kiện chuyển đổi chính xảy ra ngay sau khi người dùng đăng ký (và bạn gọi API), hãy cân nhắc việc triển khai một độ trễ nhỏ (ví dụ: 5 giây) giữa lệnh gọi API và việc ghi nhật ký sự kiện quan trọng. Điều này giúp đảm bảo hoạt động đo lường trên thiết bị được khởi chạy hoàn toàn trước khi sự kiện được ghi lại.
Sử dụng địa chỉ email hoặc số điện thoại đã băm
API sẽ chấp nhận địa chỉ email và số điện thoại được băm bằng thuật toán SHA256. Bạn có thể duy trì quyền kiểm soát dữ liệu của người dùng bằng cách thực hiện băm trong mã trước khi gọi đến SDK.
Để sử dụng thông tin đăng nhập đã băm, hãy chuẩn hoá địa chỉ và số điện thoại, băm chúng bằng SHA256, sau đó gọi API.
Chuẩn hoá địa chỉ email và số điện thoại
Đối với địa chỉ email, API Google Analytics giả định rằng một quy trình chuẩn hoá cụ thể được thực hiện trước khi áp dụng SHA256, vì vậy, hãy làm theo các bước sau để chuẩn hoá dữ liệu của bạn:
Chuyển đổi toàn bộ địa chỉ email thành chữ thường.
Nếu địa chỉ email có đuôi là miền @googlemail.com, hãy thay thế miền @googlemail.com bằng @gmail.com.
Đối với địa chỉ có đuôi là miền @gmail.com (bao gồm cả những địa chỉ đã được sửa đổi ở bước trước):
Xoá tất cả dấu chấm trong phần tên người dùng.
Thực hiện các thay thế sau trong phần tên người dùng:
- Đối với chữ cái I hoặc i, hoặc chữ số 1, hãy thay thế bằng chữ cái l
- Đối với chữ số 0, hãy thay thế bằng chữ o
- Đối với chữ số 2, hãy thay thế bằng chữ cái z
- Đối với chữ số 5, hãy thay thế bằng chữ s
Ví dụ: sau khi chuẩn hoá:
an.email.user0125@googlemail.comtrở thànhanemalluserolzs@gmail.comCAPSUSER0125@provider.nettrở thànhcapsuser0125@provider.net
Đối với số điện thoại, số điện thoại phải ở định dạng E.164 (tức là có tiền tố là +, mã quốc gia có từ 1 đến 3 chữ số, số thuê bao có tối đa 12 chữ số) trước khi băm bằng SHA256.
Xin lưu ý rằng email hoặc số điện thoại đã băm bằng thuật toán SHA256 phải có độ dài 32 byte và không phải là chuỗi thập lục phân.
Gọi API bằng thông tin đăng nhập đã băm
Swift
Nhập mô-đun FirebaseAnalytics và truyền địa chỉ email hoặc số điện thoại vào API initiateOnDeviceConversionMeasurement().
import FirebaseAnalytics // ... // If you're using an email address.... Analytics.initiateOnDeviceConversionMeasurement(hashedEmailAddress: hashedEmailAddress) // If you're using a phone number.... Analytics.initiateOnDeviceConversionMeasurement(hashedPhoneNumber: hashedPhoneNumber)
Objective-C
Nhập mô-đun FirebaseAnalytics và truyền địa chỉ email vào API initiateOnDeviceConversionMeasurementWithHashedEmailAddress: hoặc số điện thoại vào API initiateOnDeviceConversionMeasurementWithHashedPhoneNumber:.
@import FirebaseAnalytics; // ... // If you're using an email address.... [FIRAnalytics initiateOnDeviceConversionMeasurementWithHashedEmailAddress:hashedEmailAddress]; // If you're using a phone number.... [FIRAnalytics initiateOnDeviceConversionMeasurementWithHashedPhoneNumber:hashedPhoneNumber];
Unity
Nhập không gian tên Firebase.Analytics và truyền địa chỉ email vào API InitiateOnDeviceConversionMeasurementWithHashedEmailAddress() hoặc số điện thoại vào API InitiateOnDeviceConversionMeasurementWithHashedPhoneNumber():
using Firebase.Analytics; // ... // If you're using an email address.... FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithHashedEmailAddress(hashedEmailAddress); // If you're using a phone number.... FirebaseAnalytics.InitiateOnDeviceConversionMeasurementWithHashedPhoneNumber(hashedPhoneNumber);
Xác minh quá trình tích hợp
Bật chế độ gỡ lỗi. Sau khi gọi API đo lường bắt đầu, hãy đảm bảo rằng một thông điệp nhật ký như thông điệp nhật ký sau đây xuất hiện trong bảng điều khiển gỡ lỗi Xcode:
[FirebaseAnalytics][I-ACS023225] Initiated on-device conversion measurement
Nếu bạn bật chế độ gỡ lỗi và thêm đối số khởi chạy -DebugOnDeviceConversionMeasurement, thì việc gọi API initiateOnDeviceConversionMeasurement() sẽ mô phỏng một lượt khớp.
[FirebaseAnalytics][I-ACS023229] On-device conversion measurement found a match
Bước 2: Tích hợp Google Analytics Bước 4: Khắc phục sự cố và xử lý các vấn đề thường gặp