Há alguns dias, é possível usar o faturamento no aplicativo em aplicativos Android. Muito legal, claro. Então, comecei a trabalhar em uma atualização para meu aplicativo para implementar isso. Mas agora encontro alguns problemas. Isso é o que eu fiz:
- Tentei primeiro os IDs de produto reservados para testar respostas de cobrança estática no aplicativo. Isso funciona sem problemas.
- Fiz upload de um APK de rascunho para o mercado (com assinatura de produção, sem assinatura de depuração), que incluía a permissão com.android.vending.BILLING.
- Quando fiz isso, fui capaz de adicionar 'Produtos no aplicativo' ao meu aplicativo no mercado e definir o status como publicado.
- Criei um usuário de teste e reiniciei meu dispositivo para tornar esse usuário de teste a conta principal em meu dispositivo de teste.
- O id de produto reservado ainda funciona.
Agora vem o problema. Quando uso meu próprio ID de produto (o que adicionei antes, veja acima), uma caixa de diálogo é exibida com o seguinte texto:
" Erro do aplicativo: esta versão do aplicativo não está configurada para Faturamento do mercado. Verifique a central de ajuda para obter mais informações. "
Não há nada estranho que eu possa encontrar no log. Alguém sabe o que estou fazendo de errado aqui?
fonte
Descobri que, depois de fazer upload de uma nova cópia do meu APK para o mercado, experimento aquele "erro de aplicativo" durante a próxima hora ou mais. Depois de pelo menos uma hora (às vezes até duas horas precisam ter passado), então não recebo mais esse erro e posso comprar meus itens sem problemas. Parece que os servidores do Google precisam de pelo menos uma hora para processar o fato de que você carregou um novo APK (em relação ao aspecto InApp Billing do APK).
Portanto, meu conselho é que você espere de 1 a 2 horas após fazer o upload do seu APK e, em seguida, veja se ainda obtém o "erro de aplicativo".
fonte
Eu também tive esse problema. Eu finalmente percebi que meu aplicativo publicado tinha um versionCode de 3, meu rascunho (apk não publicado com permissão de faturamento) tinha um versionCode de 4 e o apk assinado que eu estava usando para testar o faturamento no aplicativo ainda estava no versionCode 3. Uma vez que alterei o versionCode para 4, consegui acessar a página real do produto no aplicativo para a compra que estava solicitando.
fonte
Isso pode acontecer em compilações assinadas e lançadas quando o apk carregado como rascunho não corresponde ao apk em execução no sistema em modo de teste. Apenas certifique-se de que suas compilações correspondem, você deve estar bem no modo de teste e não verá mais erros.
A grande preocupação aqui é que veremos esse mesmo comportamento na produção, ou seja, lançamos 1.0.0-1 com faturamento no aplicativo, depois lançamos 1.0.0-2 e os usuários que executam 1.0.0-1 serão incapaz de comprar ou ter suas compras restauradas e receberá o mesmo erro (experiência do usuário muito ruim). Estive vasculhando a documentação em busca de menção a esse comportamento como específico do modo de teste, mas sem sorte até agora; adicionamos um bug aqui: http://code.google.com/p/marketbilling/issues/detail?id=15#c0
fonte
Eu também encontrei o mesmo problema ... mas agora o problema foi resolvido
Minhas observações baseadas em alguns ensaios:
Espero que isto ajude
fonte
Copiado de pergunta duplicada: https://stackoverflow.com/a/22469253/1321401
Esse erro pode ocorrer por vários motivos.
Aqui está a lista de requisitos para os testes do Google IAB.
Pré-requisitos:
Requisitos de teste:
PS: Depuração com certificado de lançamento : https://stackoverflow.com/a/15754187/1321401 (Thnx @dipp para o link)
PPS: Faz muito tempo que eu queria fazer essa lista.
Thnx @zlgdev para atualização
fonte
Minha solução foi que eu precisava usar a mesma chave para assinar o apk no Market (como rascunho do APK) e no teste. Portanto, em vez de apenas executar o aplicativo, sempre preciso exportar o APK assinado a cada atualização, desinstalá-lo e reinstalá-lo no dispositivo usando os comandos de linha de comando do apk. Em princípio, você também pode usar seu próprio keystore como um keystore de depuração, mas isso requer o uso de senhas e nomes específicos codificados para chaves.
fonte
Pensei em compartilhar mais uma solução possível se você estiver recebendo esse erro. Eu carreguei originalmente para o Google um rascunho do meu apk com a permissão de faturamento habilitada, então eu pude configurar em itens compráveis de aplicativos. Mais tarde, carreguei outro apk sem a permissão de faturamento ausente no meu AndroidManifest, o que resultou no erro. Definitivamente parece um caso improvável, mas aconteceu comigo, então é possível.
Editar: na mesma dobra, se a versão que você enviou como rascunho ao google não estiver assinada, o erro também ocorrerá.
fonte
Para adicionar meus dois centavos, fui capaz de testá-lo enviando para a versão Beta e criando uma conta do Gmail com acesso de teste na guia de configurações com uma nova versão do meu aplicativo ...
Agora estou passando para a produção ...
Obrigado! Nathan
fonte
Tópico antigo, mas adicionando minha experiência ...
Eu instalei um apk com um versionCode 1 maior que o da loja. Joguei em 2 contas diferentes no meu Nexus 7 e tive este problema. Então, desinstalei e instalei da loja para ter certeza de que o versionCode era compatível. Mesmo esperando durante a noite, o erro não foi eliminado.
Acontece que eu precisava desinstalar de todas as 3 contas do Google que vinculei ao meu Nexus 7. Ele se recuperou quando eu desinstalei o aplicativo explicitamente de todas as três contas do meu Nexus 7 e, em seguida, reinstalei da loja.
fonte