Sebelum Anda memulai:

Easily test with our SDK wizard

Agar berhasil menyelesaikan pengujian dalam dokumen ini, Anda harus:

Uji integrasi SDK iOS

Pengujian ini terdiri dari:

  1. Menyimulasikan klik iklan dan menginstal aplikasi:
  2. Inspeksi data konversi penginstalan.

Apps that implement ATT

Ikuti petunjuk ini jika Anda menerapkan Transparansi Pelacakan Aplikasi (ATT) di aplikasi Anda.
Atribusi akan terjadi melalui pencocokan ID jika kondisi berikut terpenuhi:

  • Tautan atribusi berisi idfa parameter
  • ATT diterapkan dan:
    1. requestTrackingAuthorization dipanggil sebelumnya start (dengan menggunakan waitForATTUserAuthorization)
    2. Persetujuan pengguna diberikan.

Langkah 1: Simulasikan klik iklan
Menyimulasikan klik iklan melalui tautan atribusi. Menyusun tautan atribusi sebagai berikut:

https://app.appsflyer.com/<app_id>?pid=<media_source>
&idfa=<registered_device_idfa>

Dimana:

  • app_id adalah ID aplikasi AppsFlyer Anda (termasuk id akhiran)
  • pid adalah sumber media tempat penginstalan harus diatribusikan
  • idfa adalah IDFA perangkat yang terdaftar.

Contoh
Jika ID aplikasi Anda adalah id123456789, tautan atribusi mungkin terlihat seperti ini:

https://app.appsflyer.com/id123456789?pid=conversionTest1&idfa=1A2B3C4D-9128-4597-1234- 
04E23D654321

Langkah 2: Instal aplikasi
Aktifkan mode debug dan instal aplikasi pada perangkat uji yang terdaftar .

Langkah 3: Jalankan tes
Lanjutkan untuk memeriksa data konversi .

Apps that don't implement ATT

Langkah 1: Simulasikan klik iklan
Menyimulasikan klik iklan melalui tautan atribusi. Menyusun tautan atribusi sebagai berikut:

https://app.appsflyer.com/<app_id>?pid=<media_source>

Dimana:

  • app_id adalah ID aplikasi AppsFlyer Anda (termasuk id awalan)
  • pid adalah sumber media tempat penginstalan harus diatribusikan.

Contoh
Jika ID aplikasi Anda adalah id123456789, tautan atribusi mungkin terlihat seperti ini:

https://app.appsflyer.com/id123456789?pid=conversionTest1

Langkah 2: Instal aplikasi
Aktifkan mode debug dan instal aplikasi di perangkat apa pun–karena IDFA yang digunakan untuk mendaftarkan perangkat tidak tersedia, pendaftaran perangkat tidak berpengaruh dalam kasus ini.

Langkah 3: Jalankan tes
Lanjutkan untuk memeriksa data konversi .

👍

Tips

Umumnya, pengujian yang menggunakan tautan atribusi dilakukan lebih dari sekali. Itulah sebabnya disarankan untuk menggunakan salah satu parameter atribusi untuk "memberi versi" pengujian Anda–menjadikannya lebih mudah dipahami tautan mana yang memicu konversi.

Pada contoh di atas, nilai pid is conversionTest1. Di pengujian berturut-turut, meningkatkan nilai dari pid to conversionTest2, conversionTest3, dan seterusnya.

Inspect conversion data

Setelah menyimulasikan klik iklan dan menginstal aplikasi, ikuti langkah-langkah ini untuk memeriksa data konversi penginstalan.

Langkah 1: Ambil UID instal
Setelah aplikasi diinstal, di terminal Xcode, cari conversions.appsflyer. Cari uid parameter dan salin nilainya.

2452

Langkah 2: Memeriksa data konversi
Buka API uji data konversidan isi bidang yang diwajibkan:

  1. app-id: ID aplikasi Anda
  2. device_id: rekat nilai dari uid dari langkah 1.
  3. devkey - Application's devkey. Learn here how to get it.

Lalu, klik Try it (Cobalah)! Untuk menjalankan pengujian.

Hasil yang diharapkan
Jika ATT diterapkan dan persetujuan pengguna diberikan, hasilnya adalah respons 200 yang mirip dengan (disingkat agar mudah dibaca):

{
    ...
    "af_status" = "Non-organic";
    ...
    "match_type" = id_matching;
    "media_source" = conversionTest1;
    ...
}

Jika tidak, atribusi terjadi secara probabilistik dan hasilnya adalah 200 respons yang mirip dengan (dipotong agar mudah dibaca):

{
    ...
    "af_status" = "Non-organic";
    ...
    "match_type" = probabilistic;
    "media_source" = conversionTest1;
    ...
}

Jika penginstalan tidak diatribusikan, hasilnya adalah respons 200 dengan payload berikut:

{
    "af_message" = "organic install";
    "af_status" = Organic;
    "install_time" = "2021-08-23 06:59:51.194";
    "is_first_launch" = 1;
}

📘

Catatan

Mungkin perlu waktu hingga 30 menit hingga penginstalan muncul di dashboard.

Penyelesaikan masalah integrasi SDK iOS

Install dan Event tidak direkam

Ada beberapa alasan mengapa install dan event tidak direkam:

  • Format ID Aplikasi Salah: Jika Anda menentukan ID aplikasi dalam format yang salah, penginstalan dan event tidak tercatat. Saat mengatur ID Aplikasi di file delegate, pastikan ID hanya berisi angka. Jika format ID dalam format yang salah, log akan menampilkan kesalahan berikut:

    \[ERROR\] AppsFlyer: -\[AppsFlyerTracker validateAppID\] 
        AppsFlyer Error: appleAppID should be a number!
    
  • Incorrect App ID (ID Aplikasi Salah): Jika Anda menentukan ID aplikasi yang tidak ada di akun Anda, penginstalan dan event tidak tercatat. Log akan menampilkan kesalahan berikut:

    AppsFlyer: -[AppsFlyerHTTPClient sendRequestEventToServer:isRequestFromCache:appID:isDebug:
            completionHandler:]_block_invoke sent information to server, status = 404
    

The 404 eror mengindikasikan bahwa SDK tidak dapat menemukan aplikasi tersebut di akun Anda.

  • Bad Dev Key (Kode Pengembang Salah): Jika Anda menentukan kode pengembang yang salah, penginstalan dan event tidak tercatat. Log akan menampilkan kesalahan berikut:

    AppsFlyer: -[AppsFlyerHTTPClient 
    sendRequestEventToServer:isRequestFromCache:appID:isDebug:completionHandler:]
            _block_invoke sent information to server, status = 400
    

    Error 400 mengindikasikan bahwa SDK tidak dapat mengautentikasikan permintaan untuk merekam install dan event. Pastikan dev key yang dipakai sudah benar. Pastikan juga dev key hanya berisi karakter alfanumerik.

    Benar:

    [AppsFlyerLib shared].appleAppID = @"340954503";
    

    Salah:

    [AppsFlyerLib shared].appleAppID = @"id340954503";
    

    Salah:

    [AppsFlyerLib shared].appleAppID = @"com.appslyer.sampleapp";
    

ID App dan Kode Programmer Benar tapi Install tidak direkam

Skenario
App berisi App ID dan kode dev key yang benar tapi install tidak direkam.

Kemungkinan Penyebab


SDK tidak dimulai dengan benar. Pastikan untuk memanggil start metode di applicationDidBecomeActive:

    - (void)applicationDidBecomeActive:(UIApplication *)application { 
        [[AppsFlyerLib shared] start]; 
        }
    func applicationDidBecomeActive(application: UIApplication) { 
        AppsFlyerLib.shared().start() 
    }

Log Menampilkan "AppsFlyer dev key missing or empty. Aborting"

Skenario
Anda mencoba melihat install dan in-app event di log. Log menampilkan "AppsFlyer dev key missing or empty. Aborting".

Kemungkinan Penyebab

Kode pengembang belum diatur. Pastikan untuk mengaturnya di appDelegate di didFinishLaunchingWithOptions metode:

[AppsFlyerLib shared].appsFlyerDevKey = @"<YOUR_DEV_KEY>";
AppsFlyerLib.shared().appsFlyerDevKey = "<YOUR_DEV_KEY>"

Install Selalu Teratribusi ke Organic

Skenario
Anda sedang menguji atribusi menggunakan link atribusi. Anda telah mengimplementasi SDK conversion listener tapi log selalu menampilkan install sebagai organic. Selain itu, tidak ada non-organic installs yang tercatat di dashboard.

Kemungkinan Penyebab

  1. Tautan atribusi yang Anda gunakan salah. Lihat panduan kami tentang tautan atribusi .
  2. Pastikan perangkat yang Anda uji itu terdaftar.

Pendapatan tidak direkam dengan Benar

Skenario
Anda sedang menguji in-app event dengan pendapatan. Event muncul di dashboard tapi pendapatan tidak dicatat

Kemungkinan Penyebab


Parameter pendapatan tidak dalam format yang benar. JANGAN memformat nilai pendapatan dengan cara apa pun. Nilai tidak boleh mengandung pemisah koma, simbol mata uang, atau teks. Misalnya, event pendapatan harus serupa dengan 1234.56.

Saya Mendapat Respons 404 pada Rekaman Install atau Event

Skenario
Anda sedang menguji install dan in-app event untuk melihat bahwa mereka diatribusikan ke media source yang tepat. Namun, muncul respons 404 untuk install dan in-app event. install atau in-app event tidak muncul di dashboard.

Kemungkinan Penyebab


Respons 404 menunjukkan bahwa ID aplikasi salah. Lihat Penginstalan dan Event tidak dicatat .

Saya mendapat respons 400 pada Rekaman Install atau Event

Skenario
Anda sedang mencoba pengujian in-app event di log. Saat memicu event, Anda melihat respons 400 di log.

Kemungkinan Penyebab


Ini mungkin menunjukkan masalah dengan kode pengembang. Periksa apakah kode pengembang sudah benar. Pastikan juga kode pengembang hanya berisi karakter alfanumerik. Lihat Penginstalan dan Event tidak dicatat .

Saya mendapat respons 400 pada Rekaman Install atau Event

Skenario
Anda mencoba untuk menguji instalasi dan event konversi lainnya di log. Saat Anda memicu event-event ini, Anda melihat response 403 (dilarang) di log.

Kemungkinan Penyebab


This might be because you have the Zero package, which does not include attribution data; only data on clicks and impressions. To start receiving attribution data, learn more about the different AppsFlyer packages, and update as needed. You can also contact our customer engagement team at [email protected] if you have questions about our packages.

Membuat aplikasi debug iOS

OPSIONAL
Anda dapat memanfaatkan kemampuan konfigurasi kompilasi Xcode untuk mengonfigurasi aplikasi debug yang mudah digunakan . Ini akan memungkinkan Anda untuk beralih antara aplikasi debug dan produksi dengan memanfaatkan kondisi kompilasi aktif Xcode.

📘

Catatan

Jika Anda tidak keberatan mencampur data produksi dengan lalu lintas pengujian, Anda dapat melompat ke pengujian integrasi . Semua pengujian dapat dilakukan untuk aplikasi produksi dan debug.

Ini dicapai dengan mengonfigurasikan User-Defined Setting (Pengaturan yang Ditentukan Pengguna) di Pengaturan Build proyek Anda dan mengeksposnya melalui info.plist properti.

Langkah 1: Tambahkan aplikasi debug ke AppsFlyer
Add a new pending iOS app to AppsFlyer or ask a team member with dashboard access to add it. Choose any available app ID–You will need it in step 3. Make sure the ID is 9 digits and starts with four 1s, for example, 111167538.

Langkah 2: Tambahkan Pengaturan Buatan Pengguna

  1. Di Xcode, dalam tampilan navigator file, pilih root proyek Anda dan buka Build Settings (Pengaturan Build).
  2. Klik + di toolbar dan pilih Add User-Defined Setting. Di kasus ini, kita menamainya AF_APP_ID.
  3. Perluas Pengaturan Buatan Pengguna yang baru dibuat:
    • Atur Pengaturan Persyaratan Debug ke ID aplikasi pengujian Anda (disebutkan di langkah 1)
    • Atur Pengaturan Persyaratan Release (Rilis) ke ID aplikasi produksi Anda.
987

Langkah 3: Buka ID aplikasi melalui info.plist
Ke info.plist dan tambahkan properti baru (dipanggil AFAppID di kasus ini). Atur nilainya ke $(AF_APP_ID) (berdasarkan nama User-Defined Setting di langkah 2).

971

Langkah 4: Ambil dan atur ID aplikasi
Untuk mengakses dan menggunakan ID aplikasi selama inisialisasi SD, tambahkan kode berikut ke didFinishLaunchingWithOptions Di AppDelegate:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    // ...
    guard let appID : String = Bundle.main.object(forInfoDictionaryKey: "AFAppID") as? String else {
        fatalError("Cannot find app ID")
    }
    AppsFlyerLib.shared().appleAppID = appID
    // ...
    return true
}

Langkah 5: Jalankan aplikasi menggunakan konfigurasi build Debug
Untuk mengubah konfigurasi build aktif:

  1. buka Product (Produk) > Scheme (Skema) > Edit Scheme... (Edit Skema).
  2. Pilih Run (Jalankan) dan ubah Build configuration (Konfigurasi build) ke Debug atau Release, sesuai kebutuhan.
945

Sekarang, saat Anda menggunakan konfigurasi Debug untuk membuat aplikasi Anda, Xcode akan menggunakan ID aplikasi debug yang Anda konfigurasikan di langkah 2.