Membuat kampanye promosi aplikasi kustom

Selain membuat kampanye iklan untuk aplikasi yang akan berjalan di aplikasi Windows, Anda juga dapat mempromosikan aplikasi menggunakan saluran lain. Misalnya, Anda dapat mempromosikan aplikasi menggunakan penyedia pemasaran aplikasi pihak ketiga, atau Anda dapat memposting tautan ke aplikasi Anda di situs media sosial. Aktivitas ini disebut kampanye kustom.

Jika menjalankan kampanye khusus untuk aplikasi, Anda dapat melacak performa relatif setiap kampanye dengan membuat URL yang berbeda untuk setiap kampanye kustom, di mana setiap URL berisi ID kampanye yang berbeda. Saat pelanggan yang menjalankan Windows 10 mengklik URL yang berisi ID kampanye, Microsoft mengaitkan klik dengan kampanye kustom yang sesuai dan membuat data ini tersedia untuk Anda di Pusat Mitra.

Penting

Data ini hanya dilacak untuk pelanggan di Windows 10. Pelanggan yang menggunakan sistem operasi lain masih dapat mengikuti tautan ke daftar aplikasi Anda, tetapi data tentang aktivitas pelanggan tersebut tidak akan disertakan.

Ada dua jenis data utama yang terkait dengan kampanye kustom: tampilan halaman untuk listingan Store aplikasi Anda, dan konversi. Konversi adalah akuisisi aplikasi yang dihasilkan dari pelanggan yang melihat halaman daftar Toko aplikasi Anda dari URL yang menyertakan ID kampanye kustom. Untuk detail selengkapnya tentang konversi, lihat Memahami bagaimana akuisisi aplikasi memenuhi syarat sebagai konversi dalam topik ini.

Anda dapat mengambil data performa kampanye kustom untuk aplikasi Anda dengan cara berikut:

  • Anda dapat melihat data tentang tampilan halaman dan konversi untuk aplikasi atau add-on dari tampilan halaman Aplikasi dan konversi berdasarkan ID kampanye dan bagan Total konversi kampanye dalam laporan Akuisisi.
  • Jika aplikasi Anda adalah aplikasi Platform Windows Universal (UWP), Anda dapat menggunakan API di Windows SDK untuk mengambil ID kampanye kustom yang menghasilkan konversi secara terprogram.

Contoh skenario kampanye kustom

Pertimbangkan pengembang game yang telah selesai membangun game baru dan ingin mempromosikannya kepada pemain game yang ada. Dia memposting pengumuman rilis game baru di halaman Facebook-nya, termasuk tautan ke daftar Toko game. Banyak pemainnya juga mengikutinya di Twitter, jadi dia juga men-tweet pengumuman dengan tautan ke daftar Toko game.

Untuk melacak keberhasilan masing-masing saluran promosi ini, pengembang membuat dua varian URL ke daftar Toko game:

  • URL yang akan dia posting ke halaman Facebook-nya menyertakan ID kampanye kustom my-facebook-campaign

  • URL yang akan dia posting ke Twitter menyertakan ID kampanye kustom my-twitter-campaign

Saat pengikut Facebook dan Twitter-nya mengklik URL, Microsoft melacak setiap klik dan mengaitkannya dengan kampanye kustom yang sesuai. Akuisisi game yang memenuhi syarat berikutnya dan setiap pembelian add-on dikaitkan dengan kampanye kustom dan dilaporkan sebagai konversi.

Memahami bagaimana akuisisi memenuhi syarat sebagai konversi

Konversi kampanye kustom adalah akuisisi yang dihasilkan dari pelanggan yang mengklik URL yang dipromosikan melalui kampanye kustom. Ada berbagai skenario untuk memenuhi syarat sebagai konversi untuk tampilan halaman Aplikasi dan konversi berdasarkan ID kampanye dan bagan Total konversi kampanye dalam laporan Akuisisi dan untuk memenuhi syarat sebagai konversi untuk mengambil ID kampanye secara terprogram.

Konversi yang memenuhi syarat dalam laporan Akuisisi

Skenario berikut memenuhi syarat sebagai konversi untuk tampilan halaman Aplikasi dan konversi berdasarkan ID kampanye dan bagan Total konversi kampanye dalam laporan Akuisisi:

  • Pelanggan dengan atau tanpa akun Microsoft yang dikenali mengeklik URL aplikasi yang berisi ID kampanye kustom dan dialihkan ke daftar Toko untuk aplikasi. Kemudian, pelanggan yang sama memperoleh aplikasi dalam waktu 24 jam setelah mereka pertama kali mengklik URL Microsoft Store dengan ID kampanye kustom.

  • Jika pelanggan memperoleh aplikasi di perangkat yang berbeda dari yang mereka klik URL dengan ID kampanye kustom, konversi hanya akan dihitung jika pelanggan masuk dengan akun Microsoft yang sama seperti saat mereka mengklik URL.

Catatan

Untuk akuisisi aplikasi yang dihitung sebagai konversi untuk kampanye kustom, setiap pembelian add-on di aplikasi tersebut juga dihitung sebagai konversi untuk kampanye kustom yang sama.

Konversi yang memenuhi syarat saat mengambil ID kampanye secara terprogram

Untuk memenuhi syarat sebagai konversi saat mengambil ID kampanye yang terkait dengan aplikasi secara terprogram, kondisi berikut harus dipenuhi:

  • Pada perangkat yang menjalankan Windows 10, versi 1607, atau yang lebih baru: Pelanggan (baik masuk ke akun Microsoft yang dikenali atau tidak) mengklik URL yang berisi ID kampanye kustom dan dialihkan ke halaman daftar Toko untuk aplikasi. Pelanggan memperoleh aplikasi saat melihat daftar Toko sebagai hasil dari mengklik URL.

  • Pada perangkat yang menjalankan Windows 10, versi 1511, atau yang lebih lama: Pelanggan (yang harus masuk dengan akun Microsoft yang dikenali) mengeklik URL yang berisi ID kampanye kustom dan dialihkan ke halaman daftar Toko untuk aplikasi. Pelanggan memperoleh aplikasi saat melihat daftar Toko sebagai hasil dari mengklik URL. Pada versi Windows 10 atau Windows 11 ini, pengguna harus masuk dengan akun Microsoft yang dikenali agar akuisisi memenuhi syarat sebagai konversi saat mengambil ID kampanye secara terprogram.

Catatan

Jika pelanggan meninggalkan halaman daftar Toko, tetapi kembali ke halaman dengan 24 jam (baik di perangkat yang sama, atau di perangkat yang berbeda saat masuk dengan akun Microsoft yang sama) dan memperoleh aplikasi, ini akan memenuhi syarat sebagai konversi dalam tampilan halaman Aplikasi dan konversi berdasarkan ID kampanye dan Bagan konversi kampanye total dalam laporan Akuisisi. Namun, ini tidak akan memenuhi syarat sebagai konversi jika Anda secara terprogram mengambil ID kampanye.

Menyematkan ID kampanye kustom ke URL halaman Microsoft Store aplikasi Anda

Untuk membuat URL halaman Microsoft Store untuk aplikasi Anda dengan ID kampanye kustom:

  1. Buat string ID untuk kampanye kustom Anda. String ini dapat berisi hingga 100 karakter, meskipun kami sarankan Anda menentukan ID kampanye pendek yang mudah diidentifikasi.

Catatan

String ID kampanye mungkin terlihat oleh pengembang lain saat mereka melihat laporan Akuisisi untuk aplikasi mereka. Ini dapat terjadi ketika pelanggan mengeklik ID kampanye kustom Anda untuk memasukkan Store dan membeli aplikasi pengembang lain dalam sesi yang sama, sehingga mengabaikan konversi tersebut ke ID kampanye Anda. Pengembang tersebut akan melihat berapa banyak konversi aplikasi mereka sendiri yang dihasilkan dari klik awal pada ID kampanye Anda, termasuk nama ID kampanye, tetapi mereka tidak akan melihat data apa pun tentang berapa banyak pengguna yang membeli aplikasi Anda sendiri (atau aplikasi dari pengembang lain) setelah mengklik ID kampanye Anda.

  1. Dapatkan tautan untuk daftar Toko aplikasi Anda dalam format HTML atau protokol.

    • Gunakan URL HTML jika Anda ingin pelanggan menavigasi ke daftar Toko berbasis web aplikasi Anda di browser pada sistem operasi apa pun. Di perangkat Windows, aplikasi Store juga akan meluncurkan dan menampilkan daftar aplikasi Anda. URL ini memiliki format https://www.microsoft.com/store/apps/*your app ID*. Misalnya, URL HTML untuk Skype adalah https://www.microsoft.com/store/apps/9wzdncrfj364. Anda dapat menemukan URL ini di halaman Identitas aplikasi Anda.

    • Gunakan format protokol jika Anda mempromosikan aplikasi dari dalam aplikasi Windows lain yang berjalan di perangkat atau komputer dengan aplikasi UWP terinstal, atau ketika Anda tahu bahwa pelanggan Anda berada di perangkat yang mendukung Microsoft Store. Tautan ini akan langsung masuk ke daftar Toko aplikasi Anda tanpa membuka browser. URL ini memiliki format ms-windows-store://pdp/?PRODUCTID=*your app id*. Misalnya, URL protokol untuk Skype adalah ms-windows-store://pdp/?PRODUCTID=9wzdncrfj364.

  2. Tambahkan string berikut ke akhir URL untuk aplikasi Anda:

    • Untuk URL format HTML, tambahkan ?cid=*my custom campaign ID*. Misalnya, jika Skype memperkenalkan ID kampanye dengan nilai custom_campaign, URL baru termasuk ID kampanye adalah: https://www.microsoft.com/store/apps/skype/9wzdncrfj364?cid=custom\_campaign.

    • Untuk URL format protokol, tambahkan &cid=*my custom campaign ID*. Misalnya, jika Skype memperkenalkan ID kampanye dengan nilai custom_campaign, URL protokol baru termasuk ID kampanye adalah: ms-windows-store://pdp/?PRODUCTID=9wzdncrfj364&cid=custom\_campaign.

Mengambil ID kampanye kustom secara terprogram untuk aplikasi

Jika aplikasi Anda adalah aplikasi UWP, Anda dapat secara terprogram mengambil ID kampanye kustom yang terkait dengan akuisisi aplikasi dengan menggunakan API di Windows SDK. API ini memungkinkan banyak skenario analitik dan monetisasi. Misalnya, Anda dapat mengetahui apakah pengguna saat ini memperoleh aplikasi Anda setelah menemukannya melalui kampanye Facebook Anda, lalu menyesuaikan pengalaman aplikasi yang sesuai. Atau, jika Anda menggunakan penyedia pemasaran aplikasi pihak ketiga, Anda dapat mengirim data kembali ke penyedia.

API ini akan mengembalikan string ID kampanye hanya jika pelanggan mengeklik URL Anda dengan ID kampanye yang disematkan, melihat halaman Microsoft Store untuk aplikasi Anda, lalu memperoleh aplikasi Anda tanpa meninggalkan halaman listingan Store. Jika pengguna meninggalkan halaman dan kemudian kembali dan memperoleh aplikasi, ini tidak akan memenuhi syarat sebagai konversi saat menggunakan API ini.

Ada API yang berbeda untuk Anda gunakan tergantung pada versi Windows yang ditargetkan aplikasi Anda:

  • Windows 10, versi 1607, atau yang lebih baru: Gunakan kelas StoreContext di namespace Windows.Services.Store. Saat menggunakan API ini, Anda dapat mengambil ID kampanye khusus untuk akuisisi yang memenuhi syarat, baik pengguna masuk dengan akun Microsoft yang dikenali atau tidak.

  • Windows 10, versi 1511, atau yang lebih lama: Gunakan kelas CurrentApp di namespace Windows.ApplicationModel.Store. Saat menggunakan API ini, Anda hanya dapat mengambil ID kampanye khusus untuk akuisisi yang memenuhi syarat di mana pengguna masuk dengan akun Microsoft yang dikenali.

Catatan

Meskipun namespace Windows.ApplicationModel.Store tersedia di semua versi Windows 10 atau Windows 11, kami sarankan Anda menggunakan API di namespace Windows.Services.Store jika aplikasi Anda menargetkan Windows 10, versi 1607, atau yang lebih baru. Untuk informasi selengkapnya tentang perbedaan antara namespace layanan ini, lihat Pembelian dan uji coba dalam aplikasi. Contoh kode berikut menunjukkan cara menyusun kode Anda untuk menggunakan kedua API dalam proyek yang sama.

Contoh kode

Contoh kode berikut menunjukkan cara mengambil ID kampanye kustom. Contoh ini menggunakan kedua set API di Windows.Services.Store dan Windows.ApplicationModel.Store namespace dengan menggunakan kode adaptif versi. Dengan mengikuti proses ini, kode Anda dapat berjalan pada versi Windows 10 atau Windows 11 apa pun. Untuk menggunakan kode ini, versi OS target proyek Anda harus Windows 10 Anniversary Edition (10.0; Build 14394) atau yang lebih baru, meskipun versi OS minimum dapat menjadi versi yang lebih lama.

// This example assumes the code file has using statements for
// System.Linq, System.Threading.Tasks, Windows.Data.Json,
// and Windows.Services.Store.
public async Task<string> GetCampaignId()
{
    // Use APIs in the Windows.Services.Store namespace if they are available
    // (the app is running on a device with Windows 10, version 1607, or later).
    if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent(
         "Windows.Services.Store.StoreContext"))
    {
        StoreContext context = StoreContext.GetDefault();

        // Try to get the campaign ID for users with a recognized Microsoft account.
        StoreProductResult result = await context.GetStoreProductForCurrentAppAsync();
        if (result.Product != null)
        {
            StoreSku sku = result.Product.Skus.FirstOrDefault(s => s.IsInUserCollection);

            if (sku != null)
            {
                return sku.CollectionData.CampaignId;
            }
        }

        // Try to get the campaign ID from the license data for users without a
        // recognized Microsoft account.
        StoreAppLicense license = await context.GetAppLicenseAsync();
        JsonObject json = JsonObject.Parse(license.ExtendedJsonData);
        if (json.ContainsKey("customPolicyField1"))
        {
            return json["customPolicyField1"].GetString();
        }

        // No campaign ID was found.
        return String.Empty;
    }
    // Fall back to using APIs in the Windows.ApplicationModel.Store namespace instead
    // (the app is running on a device with Windows 10, version 1577, or earlier).
    else
    {
#if DEBUG
        return await Windows.ApplicationModel.Store.CurrentAppSimulator.GetAppPurchaseCampaignIdAsync();
#else
        return await Windows.ApplicationModel.Store.CurrentApp.GetAppPurchaseCampaignIdAsync() ;
#endif
    }
}

Kode melakukan hal berikut:

  1. Pertama, ia memeriksa untuk melihat apakah kelas StoreContext di namespace Windows.Services.Store tersedia di perangkat saat ini (ini berarti perangkat berjalan Windows 10, versi 1607, atau yang lebih baru). Jika demikian, kode berlanjut untuk menggunakan kelas ini.

  2. Selanjutnya, ia mencoba mendapatkan ID kampanye kustom untuk kasus di mana pengguna saat ini memiliki akun Microsoft yang dikenali. Untuk melakukan ini, kode mendapatkan objek StoreSku yang mewakili SKU aplikasi saat ini, lalu mengakses properti CampaignId untuk mengambil ID kampanye, jika tersedia.

  3. Kode kemudian mencoba mengambil ID kampanye untuk kasus di mana pengguna saat ini tidak memiliki akun Microsoft yang dikenali. Dalam hal ini, ID kampanye disematkan dalam lisensi aplikasi. Kode mengambil lisensi dengan menggunakan metode GetAppLicenseAsync lalu mengurai konten JSON lisensi untuk nilai kunci bernama customPolicyField1. Nilai ini berisi ID kampanye.

  4. Jika kelas StoreContext di namespace Windows.Services.Store tidak tersedia, kode kemudian kembali menggunakan metode GetAppPurchaseCampaignIdAsync di namespace Windows.ApplicationModel.Store untuk mengambil ID kampanye kustom (namespace ini tersedia di semua versi Windows 10 atau Windows 11). Perhatikan bahwa saat menggunakan metode ini, Anda hanya dapat mengambil ID kampanye khusus untuk akuisisi yang memenuhi syarat di mana pengguna memiliki akun Microsoft yang dikenali.

Tentukan ID kampanye dalam file proksi untuk namespace Windows.ApplicationModel.Store

Namespace Windows.ApplicationModel.Store mencakup CurrentAppSimulator, kelas khusus yang mensimulasikan operasi Store untuk menguji kode Anda sebelum mengirimkan aplikasi ke Store. Kelas ini mengambil data dari file lokal bernama file Windows.StoreProxy.xml. Contoh kode sebelumnya menunjukkan cara menyertakan penggunaan CurrentApp dan CurrentAppSimulator dalam kode debug dan non-debug dalam proyek Anda. Untuk menguji kode ini di lingkungan debug, tambahkan elemen AppPurchaseCampaignId ke file WindowsStoreProxy.xml di komputer pengembangan Anda, seperti yang ditunjukkan dalam contoh berikut. Saat Anda menjalankan aplikasi, metode GetAppPurchaseCampaignIdAsync akan selalu mengembalikan nilai ini.

<CurrentApp>
    ...
    <AppPurchaseCampaignId>your custom campaign ID</AppPurchaseCampaignId>
</CurrentApp>

Namespace Windows.Services.Store tidak menyediakan kelas yang dapat Anda gunakan untuk mensimulasikan info lisensi selama pengujian. Sebagai gantinya, Anda harus menerbitkan aplikasi ke Store dan mengunduh aplikasi tersebut ke perangkat pengembangan Anda untuk menggunakan lisensinya untuk pengujian. Untuk informasi selengkapnya, lihat Pembelian dan uji coba dalam aplikasi.

Menguji kampanye kustom Anda

Sebelum mempromosikan URL kampanye kustom, kami sarankan Anda menguji kampanye kustom dengan melakukan hal berikut:

  1. Masuk ke akun Microsoft di perangkat yang Anda gunakan untuk pengujian.

  2. Klik URL kampanye kustom Anda. Pastikan Anda dibawa ke halaman aplikasi Anda, lalu tutup aplikasi UWP atau halaman browser.

  3. Klik URL beberapa kali lagi, menutup aplikasi UWP atau halaman browser setelah setiap kunjungan ke halaman aplikasi Anda. Selama salah satu kunjungan ke halaman aplikasi Anda, dapatkan aplikasi Anda untuk menghasilkan konversi. Hitung jumlah total kali Anda mengklik URL.

  4. Konfirmasikan apakah tampilan halaman dan konversi yang diharapkan muncul di tampilan halaman Aplikasi dan konversi berdasarkan ID kampanye dan bagan Total konversi kampanye dalam laporan Akuisisi, dan uji kode aplikasi Anda untuk mengonfirmasi apakah berhasil mengambil ID kampanye menggunakan API yang dijelaskan di atas.