Hướng dẫn tích hợp trình cắm Unity V6—Tích hợp SDK bổ sung

At a glance: Additional SDK functionalities that are available to implement APIs such as uninstall measurement, user invite attribution, push notifications, and privacy settings. 

 Bài đọc liên quan

For a complete picture of integrating the Unity plugin with your apps, be sure to read these articles: 

Phân bổ

Đo lường lượt Gỡ cài đặt

Đo tỷ lệ gỡ cài đặt của người dùng đến từ các nguồn khác nhau.

Để thiết lập đo lường lượt gỡ cài đặt, hãy xem hướng dẫn hệ điều hành liên quan.

Android - FirebaseiOS
  1. Tải về Unity Firebase SDK từ https://firebase.google.com/docs/unity/setup.
  2. Nhập FirebaseMessaging.unitypackage vào dự án.
  3. Nhập google-services.json vào dự án (nhận được từ giao diện điều khiển Firebase)

     Lưu ý

    Unity Firebase SDK tự động thêm người nhận bản kê.

  4. Thêm mã này vào lớp Unity xử lý mã AppsFlyer:
    sử dụng Firebase.Messaging;
    sử dụng Firebase.Unity;
  5. Thêm vào phương thức Start():
    Firebase.Messaging.FirebaseMessaging.TokenReceived += OnTokenReceived;
  6. Thêm phương thức này:
    public void OnTokenReceived(object sender, Firebase.Messaging.TokenReceivedEventArgs token)
    {
    #if UNITY_ANDROID
    AppsFlyerAndroid.updateServerUninstallToken(token.Token);
    #endif
    }

 Hướng dẫn gỡ cài đặt Android

 Cảnh báo

Tình huống: Triển khai Unity Firebase SDK. 

Yêu cầu: Không thêm lệnh gọi phương thức sau vào enableUninstallTracking("SenderID") nếu bạn đã thêm Firebase Unity SDK vào dự án của mình.

Hậu quả nếu được thêm vào:

  • Firebase Unity SDK sẽ lấy ID người gửi từ tệp google-services.json (đã được thêm trước đó).
  • Do đó, điều này có thể gây ra cảnh báo gỡ lỗi từ Android.

Thiết lập dữ liệu tùy chỉnh bổ sung

Để tích hợp ở cấp SDK với một số nền tảng đối tác bên ngoài (bao gồm Segment, Adobe và Urban Airship), cần phải sử dụng API setAdditionalData.

Chỉ sử dụng API này nếu bài viết tích hợp đối tác nêu rõ ràng API setAdditionalData là bắt buộc.

Ví dụ: setAdditableData

Dictionary<string, string> CustomDataMap = new Dictionary<string, string>();
CustomDataMap.Add("custom_param_1", "value_of_param_1");
AppsFlyer.setAdditionalData(CustomDataMap);

Các phiên

Tùy chỉnh thời gian giữa các phiên

Theo mặc định, phải mất ít nhất 5 giây giữa hai lần khởi chạy ứng dụng để được tính là hai phiên riêng biệt.  Thiết lập thời gian tối thiểu giữa các phiên:

AppsFlyer.setMinTimeBetweenSessions(custom_time_ins_seconds);

Lưu ý! Nếu bạn đặt giá trị cao cho thời gian tùy chỉnh giữa các lần khởi chạy, điều này có thể ảnh hưởng xấu đến các API dựa trên dữ liệu phiên (chẳng hạn như liên kết sâu).

Xem thêm về tính phiên ứng dụng.

Phiên chạy nền cho ứng dụng tiện ích

Không có sẵn trong Unity.

Truyền thông Sở hữu

Giải quyết các URL liên kết sâu được gói

Một số dịch vụ của bên thứ 3 (chẳng hạn như nhà cung cấp dịch vụ email):

  • Gói liên kết trong email bằng cách sử dụng các miền ghi nhận nhấp chuột của riêng của chúng.
  • Cho phép bạn thiết lập các miền ghi nhận nhấp chuột của riêng bạn.

Nếu OneLink được gói trong các miền như vậy, điều này có thể giới hạn chức năng của nó. Để khắc phục điều này:

  • Gọi API setResolveDeepLinkURLs trước khi khởi tạo SDK.
  • API nhận OneLink từ các miền nhấp chuột để khởi chạy ứng dụng. 

Scenario: The click domains redirect to your OneLink at https://mysubdomain.onelink.me/abCD.

Giải pháp:

  • Sử dụng API setResolveDeepLinkURLsđể nhận OneLink đạt được sau khi các miền nhấp chuột chuyển hướng một người dùng ứng dụng.
  • Phương thức API này nhận được danh sách các miền do trình cắm giải quyết.
  • Mã sau cho phép bạn sử dụng miền nhấp chuột của mình nhưng đồng thời, duy trì chức năng của OneLink:

     Ví dụ

    AppsFlyer.setResolveDeepLinkURLs("example.com", "click.example.com");

Now, use the data from this OneLink to deep-link and customize user content.

Ghi nhận thông báo đẩy

Ghi nhận thông báo đẩy như một phần của chiến dịch nhắm mục tiêu lại.

Để ghi nhận thông báo đẩy:

  • Gọi phương thức sendPushNotificationData.
  • Phương thức này nằm trong phương thức onCreate của mọi hoạt động được khởi chạy sau khi nhấp vào thông báo này:
#if UNITY_ANDROID && !UNITY_EDITOR
AppsFlyerAndroid.handlePushNotifications();
#endif

Để biết thêm thông tin, hãy đọc về đo lường thông báo đẩy.

Phân bổ Mời người dùng

Nếu người dùng ứng dụng hiện có mời bạn bè và liên hệ của họ trở thành người dùng mới, đây có thể là một nguồn tăng trưởng.

Attribute and record installs originating from user invites within the app. User invite attribution.

Phân bổ quảng cáo chéo

Cross-promoting apps can cand drive additional app installs. 

Attribute and record installs originating from a cross-promotion campaign: promote one of your apps from within another of your apps already launched by one of your users. Cross-promotion attribution.

User identifiers

Nhận ID AppsFlyer

ID AppsFlyer được tạo cho mỗi lần cài đặt ứng dụng mới. Sử dụng ID AppsFlyer để:

 Để có được ID AppsFlyer duy nhất:

string AppsFlyerUID = AppsFlyer.getAppsFlyerId();

Thiết lập ID người dùng Customer User ID

Đặt customer user ID (CUID) duy nhất của riêng bạn và tham chiếu chéo ID đó với ID AppsFlyer duy nhất.

CUID duy nhất: 

  • Xuất hiện trong báo cáo CSV dữ liệu thô của AppsFlyer.
  • Có thể được sử dụng trong API postback để tham chiếu chéo với các ID nội bộ.

Để đặt CUID, hãy sử dụng:

AppsFlyer.setCustomerUserId("someId");

Phương pháp thực hành tốt! Đặt CUID sớm trong luồng của ứng dụng—nó chỉ được liên kết với các sự kiện được báo cáo sau khi thiết lập.

Gọi setCustomerUserId trước khi gọi startSDK

  • Các sự kiện được ghi nhận sẽ được liên kết với CUID.
  • Dữ liệu liên quan sẽ xuất hiện trong các báo cáo dữ liệu thô cho các lượt cài đặt và sự kiện.
AppsFlyer.setCustomerUserId("someId");

Nhận Customer User ID

Kiểm tra CUID để biết thêm thông tin.

Trì hoãn init của trình cắm cho customerUserID

Set the customer user ID (CUID) and only then initialize the plugin. This is useful if you want your install and event data to contain your CUID.

Xem hướng dẫn của hệ điều hành liên quan:

  1. Android
  2. iOS

 Cảnh báo

Chỉ trì hoãn cài đặt CUID nếu nó phù hợp với logic kinh doanh của bạn. Nếu bạn trì hoãn cài đặt CUID, điều này có thể tăng khả năng khác biệt và có thể khiến ứng dụng của bạn bị rủi ro về lừa đảo.

Thu thập OAID

OAID là một trong những mã định danh thiết bị duy nhất cho phép phân bổ.

Để thu thập OAID:

Trình cắm Unity từ V5.4 trở lên Trình cắm Unity từ V5.3 trở xuống

OAID được thu thập tự động theo mặc định. Để lựa chọn không tham gia, hãy gọi AppsFlyerAndroid.setCollectOaid(false);.

Quyền riêng tư của người dùng

Lựa chọn không tham gia

Các tình huống khác nhau, chẳng hạn như các vấn đề tuân thủ pháp luật và quyền riêng tư, có thể dẫn đến quyết định lựa chọn không tham gia và dừng tất cả ghi nhận (theo dõi)

Phương pháp thực hành tốt nhất!Thực hiện theo các hướng dẫn chính xác cho tình huống liên quan đến ứng dụng của bạn.

Để dừng theo dõi:

  • Gọi stopSDK và đặt thành true.
    AppsFlyer.stopSDK(true);
  • Trình cắm ngừng hoạt động và không còn giao tiếp với các máy chủ AppsFlyer.

Để kích hoạt lại theo dõi: Gọi stopSDK và đặt thành false.

 Chú ý

Sử dụng API stopSDK nếu bạn muốn ngừng hoàn toàn việc theo dõi một người dùng ứng dụng cụ thể. Việc sử dụng API ảnh hưởng nghiêm trọng đến phân bổ, thu thập dữ liệu và cơ chế liên kết sâu.

Ẩn danh Dữ liệu Người dùng

Ẩn danh các mã định danh người dùng cụ thể trong phân tích của AppsFlyer để tuân thủ các quy định về quyền riêng tư, các chính sách về dữ liệu và quyền riêng tư của Facebook.

Để ẩn danh người dùng ứng dụng:

  1. Đặt API trong quá trình khởi tạo SDK
  2. Gọi anonymizeUser và đặt thành true.
    AppsFlyer.anonymizeUser(true);
  3. App user installs, events, and sessions are anonymized.

Để bắt đầu lại theo dõi: Gọi anonymizeUser và đặt thành false.

 Cảnh báo

Việc ẩn danh người dùng sẽ ảnh hưởng nghiêm trọng đến thông tin phân bổ của bạn. Chỉ sử dụng tùy chọn này cho các khu vực mà pháp luật nghiêm cấm thu thập thông tin của người dùng.

Loại trừ các đối tác không được lấy dữ liệu

Trong một số trường hợp, nhà quảng cáo có thể muốn ngừng chia sẻ dữ liệu cấp người dùng với các mạng/đối tác quảng cáo cho những người dùng cụ thể. Lý do cho điều này bao gồm: 

  • Các chính sách bảo mật như CCPA hoặc GDPR
  • Cơ chế chọn lựa không tham gia của người dùng
  • Cạnh tranh với một số đối tác (mạng quảng cáo, bên thứ 3)

AppsFlyer cung cấp hai phương thức API để ngừng chia sẻ dữ liệu với một số hoặc tất cả các đối tác:

  • setSharingFilterUsed by advertisers to set some (one or more) networks/integrated partners to exclude from getting data.
  • setSharingFilterForAllPartners: Used by advertisers to exclude all networks/integrated partners from getting data.

Các phương thức lọc này được hỗ trợ từ SDK V5.4.1.

The filtering method must be called every time the SDK is initialized and affects the whole session. If it takes time to determine whether you must set the sharing filters, then delay the SDK initialization. 

Khi phương thức này được kích hoạt trước lệnh gọi startSDK đầu tiên:

  • Người dùng từ SRN được phân bổ là Tự nhiên và dữ liệu của họ không được chia sẻ với các đối tác tích hợp.
  • Người dùng từ mạng quảng cáo lượt nhấp (không phải SRN) được phân bổ chính xác trên AppsFlyer, nhưng không được chia sẻ với mạng quảng cáo thông qua postback, API, báo cáo dữ liệu thô hoặc bằng bất kỳ phương thức nào khác.

Hiện tại, không thể lọc dữ liệu gỡ cài đặt bằng các phương thức này. Tuy nhiên, bạn có thể ngừng gửi sự kiện Gỡ cài đặt cho đối tác bằng cách sử dụng trang thiết lập trong AppsFlyer. 

Bài viết này có hữu ích không?