Habilitar compras de produto no aplicativo (HTML)

[ Este artigo destina-se aos desenvolvedores do Windows 8.x e do Windows Phone 8.x que escrevem aplicativos do Windows Runtime. Se você estiver desenvolvendo para o Windows 10, consulte documentação mais recente]

Seu aplicativo pode oferecer produtos e recursos que os clientes podem comprar diretamente do aplicativo. Veja a seguir como habilitar essas ofertas em seu aplicativo.

Observe que um cliente só poderá comprar um produto no aplicativo se tiver comprado a versão completa do seu aplicativo.

O que você precisa saber

Tecnologias

Pré-requisitos

  • Um aplicativo do Tempo de Execução do Windows no qual devem ser adicionados os recursos que os clientes podem comprar.

Instruções

Etapa 1: Inicie as informações de licença do aplicativo

Quando seu aplicativo estiver inicializando, obtenha o objeto LicenseInformation para seu aplicativo inicializando o CurrentApp ou CurrentAppSimulator para habilitar compras de produto no aplicativo.

function appInit()
{
    // some app initialization functions

        // Get current product object 
        // Execute only one of these statements. 
        // The next line is commented out for testing.
        // currentApp = Windows.ApplicationModel.Store.CurrentApp;

        // The next line is commented out for production/release.
        currentApp = Windows.ApplicationModel.Store.CurrentAppSimulator;

        // We should have either a real or a simulated CurrentProduct object here.

        // Get the license info
        licenseInformation = currentApp.licenseInformation;

    // other app initializations function
}

Observação  Ao codificar e testar o novo produto no aplicativo pela primeira vez, use o objeto CurrentAppSimulator em vez do objeto CurrentApp. Dessa forma, é possível verificar a lógica do licenciamento usando chamadas simuladas ao servidor de licenças em vez de chamar o servidor ativo. Para isso, você precisa personalizar o arquivo chamado "WindowsStoreProxy.xml" em %userprofile%\AppData\local\packages\<package name>\LocalState\Microsoft\Windows Store\ApiData. O simulador do Microsoft Visual Studio cria esse arquivo quando você executa seu aplicativo pela primeira vez, mas também é possível carregar um arquivo personalizado no tempo de execução. Para saber mais, consulte a documentação do CurrentAppSimulator.

 

Etapa 2: Adicione as ofertas de produto no aplicativo ao seu aplicativo

Para cada recurso a ser disponibilizado por meio de uma transação de produto no aplicativo, crie uma oferta e adicione-a ao aplicativo.

Importante  Você deve adicionar todos os produtos no aplicativo que deseja apresentar para seus clientes antes de enviá-lo para a Loja. Para adicionar novos produtos no aplicativo depois, você deve atualizar o aplicativo e reenviar uma nova versão.

 

  1. Crie um token de oferta no aplicativo

    Você pode identificar cada produto no aplicativo em seu aplicativo por um token. Esse token é uma cadeia de caracteres que você define e usa no aplicativo e na Loja para identificar um produto no aplicativo específico. Dê (ao aplicativo) um nome exclusivo e significativo, para poder identificar o recurso correto que ele representa durante a codificação. Este são alguns exemplos de nomes:

    • "SpaceMissionLevel4"
    • "ContosoCloudSave"
    • "RainbowThemePack".
  2. Codifique o recurso em um bloco de condições

    Coloque o código de cada recurso associado a um produto no aplicativo em um bloco de condições que testa se o cliente tem uma licença para usar esse recurso.

    Veja um exemplo que mostra como é possível codificar um recurso de produto chamado featureName em um bloco de condições específico da licença. A cadeia de caracteres, featureName, é o token que identifica esse produto de forma exclusiva no aplicativo e também é usada para identificá-lo na Loja.

    
    if (licenseInformation.productLicenses.lookup("featureName").isActive) 
    {
        // the customer can access this feature
    }
    else 
    {
        // the customer can't access this feature
    }
    
  3. Adicione a interface do usuário de compra para este recurso

    Seu aplicativo também deve permitir que os clientes comprem o produto ou o recurso proposto para produto no aplicativo. O jeito de comprá-los é diferente da maneira como os clientes compraram o aplicativo completo na Loja.

    Veja aqui como testar se o cliente já possui um produto no aplicativo e, se não tiver, se ele pode visualizar a caixa de diálogo para fazer a compra. Substitua o comentário "mostrar a caixa de diálogo de compra" pelo código personalizado da caixa de diálogo de compra (como uma página com um botão "Compre este aplicativo!").

    function buyFeature1() {
        if (!licenseInformation.productLicenses.lookup("featureName").isActive)
        {
            // The customer doesn't own this feature, so 
            // show the purchase dialog.
    
            // note: currentApp is a reference to CurrentAppSimulator from a previous declaration
            currentApp.requestProductPurchaseAsync("featureName", false).then(
                function () {
                    //Check the license state to determine if the in-app purchase was successful.
                }, 
                function () {
                    // The in-app purchase was not completed because 
                    // there was an error.
                });
        } 
        else
        {
            // The customer already owns this feature.
        }
    }
    

Etapa 3: Mude o código de teste para as chamadas finais

Esta etapa é fácil: basta mudar todas as referências de CurrentAppSimulator para CurrentApp no código do aplicativo. Não é mais preciso fornecer o arquivo WindowsStoreProxy.xml, então, remova-o do caminho do aplicativo (embora você possa salvá-lo para referência ao configurar a oferta no aplicativo, na próxima etapa).

Etapa 4: Configurar o produto no aplicativo na Loja

Antes de enviar o aplicativo para a Loja, adicione todos os produtos no aplicativo ao fluxo de trabalho Enviar um aplicativo. Aqui, você especifica o token, o preço e o tempo de vida de um produto no aplicativo. Lembre-se de configurá-lo com a mesma configuração que você definiu no WindowsStoreProxy.xml durante o teste.

Etapa 5: Descreva o produto no aplicativo na Loja

Depois de carregar o pacote do aplicativo na Loja, você pode colocar a descrição de cada produto no aplicativo na página Descrição ao enviar o aplicativo. Se o aplicativo for compatível com mais de um idioma, descreva cada produto no aplicativo em todos os idiomas compatíveis.

Redija uma descrição clara e específica, que informe com exatidão qual é o recurso que o produto no aplicativo agrega ao aplicativo. Se não tiver muito claro qual é o valor do produto que vai além daquilo que o próprio aplicativo fornece, será difícil vendê-lo. Para saber de mais detalhes sobre partes específicas da descrição de um produto no aplicativo, consulte Descrição do aplicativo.

Comentários

Se você tiver interesse em fornecer a seus clientes opções de produto no aplicativo consumível, continue com o tópico Habilitar compras de produto no aplicativo consumível.

Se você precisar usar recibos para verificar se o usuário comprou um produto no aplicativo, examine Usando recibos para verificar compras de produto.

Tópicos relacionados

Habilitar compras de produto no aplicativo consumível

Aplicativo de avaliação e exemplo de compra no aplicativo