Creare una campagna di promozione dell'app personalizzata
Oltre a creare una campagna pubblicitaria per la tua app che verrà eseguita nelle app di Windows, puoi anche promuovere la tua app usando altri canali. Ad esempio, puoi promuovere la tua app usando un provider di marketing di app di terze parti oppure pubblicare collegamenti alla tua app nei siti di social media. Queste attività vengono chiamate campagne personalizzate.
Se esegui campagne personalizzate per la tua app, puoi tenere traccia delle prestazioni relative di ogni campagna creando un URL diverso per ogni campagna personalizzata, in cui ogni URL contiene un ID campagna diverso . Quando un cliente che utilizza Windows 10 clicca su un URL contenente un ID campagna, Microsoft associa il clic alla corrispondente campagna personalizzata e questi dati sono resi disponibili in Centro per i partner.
Importante
Questi dati vengono rilevati solo per i clienti in Windows 10. I clienti che usano altri sistemi operativi possono comunque seguire il collegamento alla presentazione dell'app, ma i dati sulle attività di tali clienti non verranno inclusi.
Esistono due tipi principali di dati associati alle campagne personalizzate: visualizzazioni pagina per la presentazione nello Store dell'app e conversioni . Una conversione è un'acquisizione di app risultante da un cliente che visualizza la pagina di presentazione nello Store dell'app da un URL che include un ID campagna personalizzato. Per altre informazioni sulle conversioni, vedere Informazioni su come le acquisizioni di app sono qualificate come conversioni in questo argomento.
È possibile recuperare i dati sulle prestazioni delle campagne personalizzate per l'app nei modi seguenti:
- "È possibile visualizzare i dati sulle visualizzazioni di pagina e le conversioni per la tua app o componente aggiuntivo dai grafici Visualizzazioni di pagina e conversioni per ID campagna e Conversioni totali delle campagne nel report Acquisizioni ."
- Se la tua app è un'app UWP (Universal Windows Platform), puoi usare le API in Windows SDK per recuperare a livello di codice l'ID campagna personalizzato che ha generato una conversione.
Scenario di campagna personalizzata di esempio
Considera uno sviluppatore di giochi che ha completato la creazione di un nuovo gioco e vuole promuoverlo ai giocatori dei suoi giochi esistenti. Pubblica l'annuncio della nuova uscita del gioco sulla sua pagina Facebook, incluso un collegamento alla scheda sullo Store del gioco. Molti dei suoi giocatori la seguono anche su Twitter, quindi twitta anche un messaggio con il link alla pagina dello Store del gioco.
Per tenere traccia del successo di ognuno di questi canali promozionali, lo sviluppatore crea due varianti dell'URL per la presentazione nello Store del gioco:
L'URL che pubblicherà sulla sua pagina Facebook include l'ID campagna personalizzato
my-facebook-campaign
L'URL che lei pubblicherà su Twitter include l'ID campagna personalizzato
my-twitter-campaign
Mentre i suoi follower di Facebook e Twitter cliccano sugli URL, Microsoft tiene traccia di ogni clic e lo associa alla campagna personalizzata corrispondente. Le successive acquisizioni qualificanti del gioco e gli eventuali acquisti di componenti aggiuntivi sono associati alla campagna personalizzata e segnalate come conversioni.
Informazioni su come le acquisizioni sono qualificate come conversioni
Una campagna personalizzata conversione è un'acquisizione risultante da un cliente che fa clic su un URL promosso tramite una campagna personalizzata. Esistono diversi scenari per qualificarsi come conversione per le visualizzazioni e le conversioni delle pagine dell'app in base all'ID campagna e conversioni totali delle campagne grafici nel report acquisizioni e per qualificarsi come conversione per recuperare a livello di codice l'ID campagna.
Conversioni qualificate nel rapporto Acquisizioni
Gli scenari seguenti sono considerati come conversione per le visualizzazioni e le conversioni delle pagine dell'app , per ID campagna, e per il totale delle conversioni delle campagne nei grafici del report sulle acquisizioni .
Un cliente con o senza un account Microsoft riconosciuto fa clic su un URL dell'app che contiene un ID campagna personalizzato e viene reindirizzato alla pagina dello Store per l'app. Quindi, lo stesso cliente acquisisce l'app entro 24 ore dal primo clic sull'URL di Microsoft Store con l'ID campagna personalizzato.
Se il cliente acquisisce l'app in un dispositivo diverso da quello in cui ha fatto clic sull'URL con l'ID campagna personalizzata, la conversione verrà conteggiata solo se il cliente ha eseguito l'accesso con lo stesso account Microsoft di quando ha fatto clic sull'URL.
Nota
Per le acquisizioni di app conteggiate come conversioni per una campagna personalizzata, tutti gli acquisti di componenti aggiuntivi in tale app vengono conteggiati anche come conversioni per la stessa campagna personalizzata.
Conversioni idonee quando si recupera programmaticamente l'ID della campagna
Per qualificarsi come conversione quando si recupera programmaticamente l'ID campagna associato all'app, è necessario soddisfare le condizioni seguenti:
In un dispositivo che esegue Windows 10 versione 1607 o successiva: un cliente (che abbia eseguito l'accesso a un account Microsoft riconosciuto o meno) fa clic su un URL che contiene un ID campagna personalizzato e viene reindirizzato alla pagina di presentazione nello Store per l'app. Il cliente acquisisce l'app durante la visualizzazione dell'elenco nello Store dopo aver cliccato sull'URL.
In un dispositivo che esegue Windows 10 versione 1511 o precedente: un cliente (che deve accedere con un account Microsoft riconosciuto) fa clic su un URL che contiene un ID campagna personalizzato e viene reindirizzato alla pagina presentazione nello Store per l'app. Il cliente acquisisce l'app durante la visualizzazione della pagina dello Store dopo aver cliccato sull'URL. In queste versioni di Windows 10 o Windows 11, l'utente deve accedere con un account Microsoft riconosciuto affinché l'acquisizione si qualifichi come conversione quando l'ID campagna viene recuperato in modo programmatico.
Nota
Se il cliente lascia la pagina del prodotto nello Store, ma torna alla pagina entro 24 ore (nello stesso dispositivo o in un altro dispositivo quando è connesso con lo stesso account Microsoft) e acquisisce l'app, questa verrà considerata una conversione nelle visualizzazioni e conversioni della pagina dell'app in base all'ID campagna e nelle conversioni totali di campagne nei grafici del report delle acquisizioni . Tuttavia, questo non qualificarsi come conversione se si recupera l'ID campagna a livello di codice.
Incorpora un ID campagna personalizzato nell'URL della pagina dell'app su Microsoft Store.
Per creare un URL di pagina di Microsoft Store per la tua app con un ID campagna personalizzato:
- Creare una stringa ID per la campagna personalizzata. Questa stringa può contenere fino a 100 caratteri, anche se ti consigliamo di definire ID campagna brevi facilmente identificabili.
Nota
La stringa ID campagna può essere visibile ad altri sviluppatori quando visualizzano il report sulle acquisizioni per le loro app. Ciò può verificarsi quando un cliente fa clic sul tuo ID campagna personalizzato per accedere allo Store e acquista un'app di un altro sviluppatore all'interno della stessa sessione, assegnando così tale conversione al tuo ID campagna. Questo sviluppatore vedrà quante conversioni della propria app sono risultate da un clic iniziale sull'ID campagna, incluso il nome dell'ID campagna, ma non potranno vedere dati sul numero di utenti che hanno acquistato le tue applicazioni (o applicazioni di altri sviluppatori) dopo aver fatto clic sull'ID campagna.
Ottieni il collegamento per la presentazione nello Store della tua app in formato HTML o protocollo.
Usa l'URL HTML se vuoi che i clienti accedano alla pagina dell'app nello Store web tramite browser su qualsiasi sistema operativo. Sui dispositivi Windows, anche l'app dello Store avvierà e visualizzerà la scheda della tua app. Questo URL ha il formato
https://apps.microsoft.com/detail/*your app ID*
. Ad esempio, l'URL HTML per Skype èhttps://apps.microsoft.com/detail/9wzdncrfj364
. È possibile trovare questo URL sulla pagina dell'identità dell'app .Usa il formato del protocollo se promuovi la tua app da altre app di Windows in esecuzione in un dispositivo o in un computer con l'app UWP installata o quando sai che i tuoi clienti si trovano in un dispositivo che supporta Microsoft Store. Questo collegamento passerà direttamente alla presentazione nello Store della tua app senza aprire un browser. Questo URL ha il formato
ms-windows-store://pdp/?PRODUCTID=*your app id*
. Ad esempio, l'URL del protocollo per Skype èms-windows-store://pdp/?PRODUCTID=9wzdncrfj364
.
Aggiungere la stringa seguente alla fine dell'URL per l'app:
Per un URL di formato HTML, aggiungere
?cid=*my custom campaign ID*
. Ad esempio, se Skype introduce un ID campagna con il valore custom_campaign, il nuovo URL incluso l'ID campagna sarà:https://apps.microsoft.com/detail/9wzdncrfj364?cid=custom_campaign
.Per un URL di formato protocollo, aggiungere
&cid=*my custom campaign ID*
. Ad esempio, se Skype introduce un ID campagna con il valore custom_campaign, il nuovo URL del protocollo incluso l'ID campagna sarà:ms-windows-store://pdp/?PRODUCTID=9wzdncrfj364&cid=custom_campaign
.
Recuperare tramite codice l'ID campagna personalizzata per un'app
Se la tua app è un'app UWP, puoi recuperare tramite codice l'ID campagna personalizzata associata all'acquisizione di un'app usando le API nel Windows SDK. Queste API rendono possibili molti scenari di analisi e monetizzazione. Ad esempio, puoi scoprire se l'utente corrente ha acquisito la tua app dopo averlo individuato tramite la campagna Facebook e quindi personalizzare l'esperienza dell'app di conseguenza. In alternativa, se usi un provider di marketing di app di terze parti, puoi inviare i dati al provider.
Queste API restituiranno una stringa ID campagna solo se il cliente ha fatto clic sull'URL con l'ID campagna incorporato, ha visualizzato la pagina di Microsoft Store per la tua app e quindi acquisisce l'app senza uscire dalla pagina presentazione nello Store. Se l'utente lascia la pagina e in seguito restituisce e acquisisce l'app, questa operazione non qualificarsi come di conversione quando si usano queste API.
Esistono API diverse da usare a seconda della versione di Windows di destinazione dell'app:
Windows 10, versione 1607 o successiva: usare la classe StoreContext nello spazio dei nomi Windows.Services.Store. Quando si usa questa API, è possibile recuperare gli ID campagna personalizzati per qualsiasi acquisizione qualificata , indipendentemente dal fatto che l'utente sia o meno collegato con un account Microsoft riconosciuto.
Windows 10, versione 1511 o precedenti: usare la classe CurrentApp nello spazio dei nomi Windows.ApplicationModel.Store. Quando si usa questa API, si possono recuperare soltanto gli ID campagna personalizzati per acquisizioni qualificate dove l'utente ha eseguito l'accesso con un account Microsoft riconosciuto.
Nota
Anche se lo spazio dei nomi Windows.ApplicationModel.Store è disponibile in tutte le versioni di Windows 10 o Windows 11, ti consigliamo di usare le API nello spazio dei nomi Windows.Services.Store se l'app è destinata a Windows 10, versione 1607 o successiva. Per ulteriori informazioni sulle differenze tra questi namespace, vedere acquisti in-app e versioni di prova. L'esempio di codice seguente illustra come strutturare il codice per usare entrambe le API nello stesso progetto.
Esempio di codice
L'esempio di codice seguente illustra come recuperare l'ID campagna personalizzato. Questo esempio usa entrambi i set di API negli spazi dei nomi Windows.Services.Store e Windows.ApplicationModel.Store usando codice adattivo della versione. Seguendo questo processo, il codice può essere eseguito in qualsiasi versione di Windows 10 o Windows 11. Per usare questo codice, la versione del sistema operativo di destinazione del progetto deve essere Windows 10 Anniversary Edition (10.0; Build 14394) o versione successiva, anche se la versione minima del sistema operativo può essere una versione precedente.
// 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
}
}
Questo codice esegue le operazioni seguenti:
In primo luogo, verifica se la classe StoreContext nello spazio dei nomi Windows.Services.Store è disponibile nel dispositivo corrente (questo significa che il dispositivo esegue Windows 10, versione 1607 o successiva). In tal caso, il codice procede all'uso di questa classe.
Successivamente, tenta di ottenere l'ID campagna su misura per il caso in cui l'utente corrente abbia un account Microsoft riconosciuto. Per fare ciò, il codice ottiene un oggetto StoreSku che rappresenta lo SKU dell'app corrente e poi accede alla proprietà CampaignId per recuperare l'ID della campagna, se disponibile.
Il codice tenta quindi di recuperare l'ID campagna per il caso in cui l'utente corrente non dispone di un account Microsoft riconosciuto. In questo caso, l'ID campagna viene incorporato nella licenza dell'app. Il codice recupera la licenza usando il metodo getAppLicenseAsync
e quindi analizza il contenuto JSON della licenza per il valore di una chiave denominata customPolicyField1 . Questo valore contiene l'ID campagna.Se la classe StoreContext nello spazio dei nomi Windows.Services.Store non è disponibile, il codice passa all'uso del metodo GetAppPurchaseCampaignIdAsync nello spazio dei nomi Windows.ApplicationModel.Store per recuperare l'ID campagna personalizzato (questo spazio dei nomi è disponibile in tutte le versioni di Windows 10 o Windows 11). Si deve notare che quando si usa questo metodo, è possibile recuperare solo gli ID campagna personalizzati per acquisizioni qualificate in cui l'utente dispone di un account Microsoft riconosciuto.
Specificare l'ID della campagna nel file proxy per il namespace Windows.ApplicationModel.Store
Lo spazio dei nomi Windows.ApplicationModel.Store include CurrentAppSimulator, una classe speciale che simula le operazioni dello Store per testare il codice prima di inviare l'app allo Store. Questa classe recupera i dati da un file locale chiamato Windows.StoreProxy.xml file. Nell'esempio di codice precedente viene illustrato come includere sia CurrentApp che CurrentAppSimulator nel codice sia di debug che non di debug nel progetto. Per testare questo codice in un ambiente di debug, aggiungere un elemento AppPurchaseCampaignId al file WindowsStoreProxy.xml nel computer di sviluppo, come illustrato nell'esempio seguente. Quando si esegue l'app, il metodo GetAppPurchaseCampaignIdAsync restituirà sempre questo valore.
<CurrentApp>
...
<AppPurchaseCampaignId>your custom campaign ID</AppPurchaseCampaignId>
</CurrentApp>
Lo spazio dei nomi Windows.Services.Store non fornisce una classe che è possibile usare per simulare le informazioni sulla licenza durante i test. Devi invece pubblicare un'app sullo Store e scaricare l'app sul dispositivo di sviluppo per utilizzare la sua licenza per i test. Per ulteriori informazioni, vedere acquisti in-app e prove.
Testare la campagna personalizzata
Prima di promuovere un URL di campagna personalizzato, ti consigliamo di testare la campagna personalizzata seguendo questi passaggi:
Accedere a un account Microsoft nel dispositivo in uso per i test.
Fai clic sull'URL della campagna personalizzata. Assicurati di passare alla pagina dell'app e quindi di chiudere l'app UWP o la pagina del browser.
Fai clic sull'URL più volte, chiudendo l'app UWP o la pagina del browser dopo ogni visita alla pagina della tua app. Durante un delle visite alla pagina dell'app, acquisire l'app per generare una conversione. Contare il numero totale di volte in cui si è fatto clic sull'URL.
Confermare se le visualizzazioni di pagina e le conversioni previste appaiono nei grafici delle visualizzazioni e conversioni della pagina dell'app per ID campagna e delle conversioni totali delle campagne nel report acquisizioni , e testare il codice dell'app per verificare se è possibile recuperare correttamente l'ID campagna utilizzando le API descritte sopra.