Crear una campaña de promoción de la aplicación personalizada

Además de crear una campaña publicitaria para la aplicación que se ejecutará en aplicaciones de Windows, también puedes promocionar la aplicación mediante otros canales. Por ejemplo, puedes promocionarla mediante proveedores de marketing para aplicaciones, o publicar vínculos a la aplicación en sitios de redes sociales. Estas actividades se denominan campañas personalizadas.

Si ejecuta campañas personalizadas para la aplicación, puede realizar un seguimiento del rendimiento relativo de cada campaña creando una dirección URL diferente para cada campaña personalizada, donde cada dirección URL contiene un identificador de campaña diferente. Cuando un cliente que ejecuta Windows 10 hace clic en una dirección URL que contiene un identificador de campaña, Microsoft asocia el clic con la campaña personalizada correspondiente y hace que estos datos estén disponibles en el Centro de partners.

Importante

Solo se realiza un seguimiento de estos datos para los clientes de Windows 10. Los clientes que usen otros sistemas operativos pueden seguir el vínculo a la descripción de la aplicación, pero no se incluirán los datos acerca de sus actividades.

Hay dos tipos principales de datos asociados a campañas personalizadas: vistas de página para la descripción de la Tienda de la aplicación y conversiones. Una conversión es una adquisición de aplicaciones que resulta de un cliente que ve la página de descripción de la Tienda de la aplicación desde una dirección URL que incluye un identificador de campaña personalizado. Para obtener más información sobre las conversiones, consulte Descripción de cómo las adquisiciones de aplicaciones se califican como conversiones en este tema.

Puedes recuperar los datos de rendimiento de una campaña personalizada para tu aplicación de las siguientes maneras:

  • Puedes ver datos sobre las vistas de página y las conversiones de tu aplicación o complemento desde las vistas de página de la aplicación y conversiones por identificador de campaña y gráficos de conversiones de campaña total en el informe Adquisiciones.
  • Si la aplicación es una aplicación Plataforma universal de Windows (UWP), puedes usar las API en Windows SDK para recuperar mediante programación el identificador de campaña personalizado que dio lugar a una conversión.

Ejemplo de escenario de campaña personalizada

Imagina a una desarrolladora de juegos que ha terminado su última creación y quiere promocionarla entre los usuarios de sus juegos ya publicados. Publica el anuncio de la nueva versión del juego en su página de Facebook, incluyendo un vínculo a la descripción de store del juego. Muchos de sus jugadores también la siguen en Twitter, por lo que también tweets un anuncio con el vínculo a la descripción de store del juego.

Para realizar un seguimiento del éxito de cada uno de estos canales de promoción, el desarrollador crea dos variantes de la dirección URL a la descripción de store del juego:

  • La dirección URL que publicará en su página de Facebook incluye el identificador de campaña personalizado. my-facebook-campaign

  • La dirección URL que publicará en Twitter incluye el identificador de campaña personalizado. my-twitter-campaign

A medida que sus seguidores de Facebook y Twitter hacen clic en las direcciones URL, Microsoft realiza un seguimiento de cada clic y lo asocia a la campaña personalizada correspondiente. Si cumplen las condiciones, las posteriores adquisiciones del juego y de cualquier complemento se asociarán a las campañas personalizadas y se notificarán como conversiones.

Descripción de cómo las adquisiciones se califican como conversiones

Una conversión de campaña personalizada es una adquisición que resulta de un cliente que hace clic en una dirección URL que se promueve a través de una campaña personalizada. Hay diferentes escenarios para calificar como una conversión para las vistas de página de la aplicación y conversiones por identificador de campaña y gráficos de conversiones de campaña total en el informe Adquisiciones y para calificar como una conversión para recuperar mediante programación el identificador de campaña.

Conversiones aptas en el informe Adquisiciones

Los siguientes escenarios se califican como una conversión para las vistas y conversiones de páginas de la aplicación por identificador de campaña y gráficos de conversiones de campaña total en el informe Adquisiciones:

  • Un cliente con o sin una cuenta Microsoft reconocida hace clic en una dirección URL de aplicación que contiene un identificador de campaña personalizado y se redirige a la descripción de la Tienda para la aplicación. A continuación, ese mismo cliente adquiere la aplicación en un plazo de 24 horas después de hacer clic por primera vez en la dirección URL de Microsoft Store con el identificador de campaña personalizado.

  • Si el cliente adquiere la aplicación en un dispositivo diferente al en el que hicieron clic en la dirección URL con el identificador de campaña personalizada, la conversión solo se contará si el cliente ha iniciado sesión con la misma cuenta de Microsoft que al hacer clic en la dirección URL.

Nota

En el caso de las adquisiciones de aplicaciones que se cuentan como conversiones para una campaña personalizada, las compras de complementos en esa aplicación también se cuentan como conversiones para la misma campaña personalizada.

Conversiones aptas al recuperar mediante programación el identificador de campaña

Para considerar que existe conversión al recuperar mediante programación el identificador de campaña asociado con la aplicación, deben cumplirse las siguientes condiciones:

  • En un dispositivo que ejecuta Windows 10, versión 1607 o posterior: un cliente (si ha iniciado sesión en una cuenta Microsoft reconocida o no) hace clic en una dirección URL que contiene un identificador de campaña personalizado y se redirige a la página de descripción de la Tienda para la aplicación. El cliente adquiere la aplicación mientras ve la descripción de la Tienda como resultado de hacer clic en la dirección URL.

  • En un dispositivo que ejecuta Windows 10, versión 1511 o anterior: un cliente (que debe iniciar sesión con una cuenta microsoft reconocida) hace clic en una dirección URL que contiene un identificador de campaña personalizado y se redirige a la página de descripción de la Tienda de la aplicación. El cliente adquiere la aplicación mientras ve la descripción de la Tienda como resultado de hacer clic en la dirección URL. En estas versiones de Windows 10 o Windows 11, el usuario debe haber iniciado sesión con una cuenta de Microsoft reconocida para que la adquisición pueda calificarse como una conversión al recuperar mediante programación el identificador de campaña.

Nota

Si el cliente deja la página de descripción de la Tienda, pero vuelve a la página con 24 horas (ya sea en el mismo dispositivo o en otro dispositivo cuando haya iniciado sesión con la misma cuenta de Microsoft) y adquiera la aplicación, esto se calificará como una conversión en las vistas de página de la aplicación y conversiones por identificador de campaña y gráficos de conversiones de campaña total en el informe Adquisiciones. Sin embargo, esto no se calificará como una conversión si recuperas mediante programación el identificador de campaña.

Insertar un identificador de campaña personalizado en la dirección URL de la página de Microsoft Store de la aplicación

Para crear una dirección URL de página de Microsoft Store para la aplicación con un identificador de campaña personalizado:

  1. Crea una cadena de identificador para la campaña personalizada. Esta cadena puede contener hasta 100 caracteres, aunque recomendamos definir identificadores de campaña cortos para que sean fáciles de identificar.

Nota

La cadena de identificador de campaña puede ser visible para otros desarrolladores cuando vean el informe Adquisiciones de sus aplicaciones. Esto puede ocurrir cuando un cliente hace clic en tu id. de campaña personalizada para entrar en la Tienda y compra la aplicación de otro desarrollador dentro de la misma sesión, lo que atribuye esa conversión a tu identificador de campaña. Ese desarrollador verá cuántas conversiones de su propia aplicación han resultado de un clic inicial en el identificador de la campaña, incluido el nombre del identificador de la campaña, pero no verán ningún dato sobre cuántos usuarios compraron sus propias aplicaciones (o aplicaciones de otros desarrolladores) después de hacer clic en el identificador de la campaña.

  1. Obtén el vínculo de la descripción de la Tienda de tu aplicación en formato HTML o de protocolo.

    • Usa la dirección URL HTML si quieres que los clientes naveguen a la descripción de la Tienda basada en web de la aplicación en un explorador en cualquier sistema operativo. En los dispositivos Windows, la aplicación de la Tienda también se iniciará y mostrará la descripción de la aplicación. Esta dirección URL tiene el formato https://www.microsoft.com/store/apps/*your app ID*. Por ejemplo, la dirección URL HTML de Skype es https://www.microsoft.com/store/apps/9wzdncrfj364. Puede encontrar esta dirección URL en la página Identidad de la aplicación .

    • Usa el formato de protocolo si estás promocionando tu aplicación desde otras aplicaciones de Windows que se ejecutan en un dispositivo o equipo con la aplicación para UWP instalada, o cuando sepas que tus clientes están en un dispositivo que admite Microsoft Store. Este vínculo irá directamente a la descripción de la Tienda de la aplicación sin abrir un explorador. Esta dirección URL tiene el formato ms-windows-store://pdp/?PRODUCTID=*your app id*. Por ejemplo, es la dirección URL de protocolo de Skype es ms-windows-store://pdp/?PRODUCTID=9wzdncrfj364.

  2. Anexa la siguiente cadena al final de la dirección URL de la aplicación:

    • Para una dirección URL de formato HTML, anexe ?cid=*my custom campaign ID*. Por ejemplo, si Skype introduce un identificador de campaña con el valor custom_campaign, la nueva dirección URL, incluido el identificador de campaña, sería: https://www.microsoft.com/store/apps/skype/9wzdncrfj364?cid=custom\_campaign.

    • Para una dirección URL en formato de protocolo, anexa &cid=*my custom campaign ID*. Por ejemplo, si Skype introduce un identificador de campaña con el valor custom_campaign, la nueva dirección URL de protocolo, incluido el identificador de campaña, sería: ms-windows-store://pdp/?PRODUCTID=9wzdncrfj364&cid=custom\_campaign.

Recuperar mediante programación el identificador de campaña personalizada de una aplicación

Si la aplicación es una aplicación para UWP, puedes recuperar mediante programación el identificador de campaña personalizado asociado a la adquisición de una aplicación mediante las API de Windows SDK. Estas API hacen posible muchos escenarios de análisis y monetización. Por ejemplo, puedes descubrir si el usuario actual compró la aplicación tras descubrirla gracias a tu campaña en Facebook y personalizar la experiencia en consecuencia. Si estás usando un proveedor de marketing de aplicaciones de terceros, puedes enviar datos de vuelta al proveedor.

Estas API devolverán una cadena de id. de campaña solo si el cliente ha clic en la dirección URL con el identificador de campaña incrustado, ha visto la página de Microsoft Store de la aplicación y, a continuación, adquiere la aplicación sin salir de la página de descripción de la Tienda. Si el usuario deja la página y, a continuación, devuelve y adquiere la aplicación, esto no se calificará como una conversión al usar estas API.

Hay diferentes API que puedes usar en función de la versión de Windows a la que se dirige la aplicación:

  • Windows 10, versión 1607 o posterior: usa la clase StoreContext en el espacio de nombres Windows.Services.Store. Al usar esta API, puede recuperar identificadores de campaña personalizados para cualquier adquisición calificada, independientemente de si el usuario ha iniciado sesión o no con una cuenta microsoft reconocida.

  • Windows 10, versión 1511 o anterior: use la clase CurrentApp en el espacio de nombres Windows.ApplicationModel.Store. Al usar esta API, solo puede recuperar identificadores de campaña personalizados para adquisiciones calificadas en las que el usuario haya iniciado sesión con una cuenta microsoft reconocida.

Nota

Aunque el espacio de nombres Windows.ApplicationModel.Store está disponible en todas las versiones de Windows 10 o Windows 11, se recomienda usar las API del espacio de nombres Windows.Services.Store si la aplicación tiene como destino Windows 10, versión 1607 o posterior. Para obtener más información sobre las diferencias entre estos espacios de nombres, consulte Compras desde la aplicación y pruebas. En el ejemplo de código siguiente se muestra cómo estructurar el código para usar ambas API en el mismo proyecto.

Ejemplo de código

En el ejemplo de código siguiente se muestra cómo recuperar el identificador de campaña personalizado. En este ejemplo se usan ambos conjuntos de API en los espacios de nombres Windows.Services.Store y Windows.ApplicationModel.Store mediante código adaptable de versión. Al seguir este proceso, el código se puede ejecutar en cualquier versión de Windows 10 o Windows 11. Para usar este código, la versión del sistema operativo de destino del proyecto debe ser Windows 10 Anniversary Edition (10.0; Compilación 14394) o posterior, aunque la versión mínima del sistema operativo puede ser una versión anterior.

// 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
    }
}

Este código hace lo siguiente:

  1. En primer lugar, comprueba si la clase StoreContext del espacio de nombres Windows.Services.Store está disponible en el dispositivo actual (esto significa que el dispositivo se está ejecutando Windows 10, versión 1607 o posterior). Si es así, el código continúa usando esta clase.

  2. A continuación, intenta obtener el identificador de campaña personalizado para el caso en el que el usuario actual tiene una cuenta microsoft reconocida. Para ello, el código obtiene un objeto StoreSku que representa la SKU de la aplicación actual y, a continuación, accede a la propiedad CampaignId para recuperar el identificador de campaña, si hay uno disponible.

  3. A continuación, el código intenta recuperar el identificador de campaña en caso de que el usuario actual no tenga una cuenta microsoft reconocida. En este caso, el identificador de campaña se inserta en la licencia de la aplicación. El código recupera la licencia mediante el método GetAppLicenseAsync y, a continuación, analiza el contenido JSON de la licencia para el valor de una clave denominada customPolicyField1. Este valor contiene el identificador de campaña.

  4. Si la clase StoreContext del espacio de nombres Windows.Services.Store no está disponible, el código vuelve a usar el método GetAppPurchaseCampaignIdAsync en el espacio de nombres Windows.ApplicationModel.Store para recuperar el identificador de campaña personalizado (este espacio de nombres está disponible en todas las versiones de Windows 10 o Windows 11). Tenga en cuenta que al usar este método, solo puede recuperar identificadores de campaña personalizados para adquisiciones calificadas en las que el usuario tiene una cuenta Microsoft reconocida.

Especificar el identificador de campaña en el archivo de proxy para el espacio de nombres Windows.ApplicationModel.Store

El espacio de nombres Windows.ApplicationModel.Store incluye CurrentAppSimulator, una clase especial que simula las operaciones de Store para probar el código antes de enviar la aplicación a la Tienda. Esta clase recupera datos de un archivo local denominado Windows.StoreProxy.xml archivo. En el ejemplo de código anterior se muestra cómo incluir el uso de CurrentApp y CurrentAppSimulator en el código de depuración y no depuración del proyecto. Para probar este código en un entorno de depuración, agregue un elemento AppPurchaseCampaignId al archivo WindowsStoreProxy.xml en el equipo de desarrollo, como se muestra en el ejemplo siguiente. Cuando ejecutes la aplicación, el método GetAppPurchaseCampaignIdAsync siempre devolverá este valor.

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

El espacio de nombres Windows.Services.Store no proporciona ninguna clase que puedas usar para simular la información de licencia durante las pruebas. En su lugar, debes publicar una aplicación en la Tienda y descargar la aplicación en el dispositivo de desarrollo para usar su licencia para las pruebas. Para obtener más información, consulta Pruebas y compras desde la aplicación.

Prueba tu campaña personalizada

Antes de que promociones la dirección URL de una campaña personalizada, te recomendamos que pruebes la campaña del siguiente modo:

  1. Inicie sesión en una cuenta microsoft en el dispositivo que está usando para realizar pruebas.

  2. Haz clic en la dirección URL de la campaña personalizada. Asegúrate de que te llevas a la página de la aplicación y, a continuación, cierra la aplicación para UWP o la página del explorador.

  3. Haz clic en la dirección URL varias veces, cerrando la aplicación para UWP o la página del explorador después de cada visita a la página de la aplicación. Durante una de las visitas a la página de la aplicación, adquiera la aplicación para generar una conversión. Cuenta el número total de veces que has hecho clic en la dirección URL.

  4. Confirme si las vistas y conversiones de página esperadas aparecen en las vistas y conversiones de página de la aplicación por identificador de campaña y gráficos de conversiones de campaña totales en el informe Adquisiciones y pruebe el código de la aplicación para confirmar si puede recuperar correctamente el identificador de campaña mediante las API descritas anteriormente.