Estou tentando integrar as compras no aplicativo do Android Market ao meu aplicativo, mas infelizmente encontro um erro irritante toda vez que tento comprar um produto real do aplicativo.
Peguei o aplicativo de amostra (Dungeons) e o adicionei ao meu aplicativo. Eu atualizei a chave pública e também atualizei a lista de produtos para o seguinte:
/ ** Uma matriz de entradas da lista de produtos para os produtos que podem ser adquiridos. * /
private static final CatalogEntry[] CATALOG = new CatalogEntry[] {
new CatalogEntry("full", "Full v", Managed.MANAGED),
};
Exportei o aplicativo usando o Eclipse, instalei no meu telefone e também carreguei no site do Android Market. Também no site do Android Market, adicionei a versão completa como uma compra no aplicativo e publiquei.
Também adicionei minha conta do googlemail como uma conta de teste (é aquela em que fiz login no meu telefone).
Quando executo o aplicativo no meu telefone, recebo uma mensagem android do item que você solicitou não disponível para compra sempre que tento comprar na íntegra, mas se eu tentar, por exemplo, android.test.purchased, funcionará perfeitamente bem.
A documentação do item que você solicitou não está disponível para compra android afirma o seguinte:
Indica que o Android Market não pode encontrar o item solicitado na lista de produtos do aplicativo. Isso pode acontecer se o ID do produto estiver incorreto em sua solicitação REQUEST_PURCHASE ou se um item não for publicado na lista de produtos do aplicativo.
O ID do produto é definitivamente o mesmo, está definitivamente publicado e a solicitação deve estar em andamento, pois é o aplicativo de amostra.
Estou usando a mesma versão do apk e publiquei produtos inapp também e também ativei o apk. mas ainda estou enfrentando o mesmo problema, por favor me ajude ho para consertá-lo.
Qualquer pensamento seria apreciado!
Merchant Account
é diferente da conta do dispositivo?Respostas:
Minha experiência com esse erro é:
Certifique-se de fazer upload do APK assinado para o console do desenvolvedor.
Certifique-se de instalar o APK assinado em seu dispositivo e não iniciar o aplicativo no depurador.
Certifique-se de criar uma conta de teste em seu console de desenvolvedor.
Configure sua conta de teste
Certifique-se de criar o faturamento do aplicativo em seu console de desenvolvedor e, finalmente, ativar o item no console !!! (este é o que me pegou depois de seguir totalmente o tutorial do Google)
Certifique-se de definir VersionCode e VersionName no manifesto para serem iguais à versão no console do desenvolvedor (Alfa, Beta ou Produção. Rascunhos não funcionam mais). A resposta de @alexgophermix funcionou para mim.
Se você está procurando pagamentos de teste sem retirada de dinheiro real, você precisa adicionar sua conta de teste a outra lista especial de contas "Contas do Gmail com acesso de teste", você pode encontrar isso na configuração da conta do jogo (não no projeto!). Na página onde você pode ver uma lista de seus projetos, vá para as configurações e, em seguida, na página "Detalhes da conta" (role para baixo, está quase no final da página), você encontrará a lista "Contas do Gmail com acesso de teste".
fonte
Aqui estão algumas coisas para verificar:
O que fez isso para mim, depois de 6 horas, foi esta última parte:
ATUALIZAR
fonte
Isso acontece quando o produto está
Inactive
na Play Store,Activate
o produto e deve funcionar bem.fonte
Existe outra causa possível para este erro, que quase me deixou louco por um dia inteiro até que eu descobri qual era o problema: a versão apk. Se você estiver trabalhando com um apk local (assinado corretamente, chave correta, ids de produto corretos) com um número de versão superior ao carregado na Play Store, você também receberá este erro.
Espero que isso ajude alguém
fonte
Este erro ocorre quando tudo o que você fez está perfeito, você usou o APK assinado com o ID de produto adequado, mas deve observar que a conta que está usando pode não ter detalhes de cartão de crédito válidos adequados .
Portanto, sempre que você quiser comprar qualquer produto, mesmo com conta de teste , essa conta deve ter detalhes de crédito válidos.
fonte
Talvez eu esteja fazendo isso errado, mas você também receberá esse erro se a versão que está testando não estiver na Play Store como Alfa, Beta ou Produção.
Costumo atualizar meu VersionCode e VersionName enquanto ainda testo uma nova versão (ANTES de fazer o upload para a Play Store) e, em seguida, acabo com este erro quando vou testar recursos específicos do IAB.
fonte
No meu caso é necessário acessar o link da aba do APK
Opt-in URL
. Abra um navegador e use o link. Em seguida, registre-se como um testador nessa página.fonte
você deve aceitar para se tornar testador
Gerenciamento de versão -> versões do aplicativo -> gerenciar testador e abrir este link (URL de ativação) com modo anônimo para fazer login na conta do testador
fonte
por favor, verifique se você está usando o mesmo id de e-mail da conta de teste ou não
fonte
Últimas adições (2016/11):
o testador deve ACEITAR a solicitação de teste retirada do link obtido no console do desenvolvedor (seção: APK)
o aplicativo deve ser PUBLICADO : está ok para publicar em teste beta / alfa; INFO: se você clicar em "Publicar" no console do desenvolvedor, o aplicativo não será publicado em produção, a menos que você o propague para a guia Produção (na seção APK);
fonte
Se o status do produto for "Inativo", ative-o. isso resolvido para mim. Claro que o Google demora um pouco para atualizar
Verifique também se o seu e-mail de teste foi registrado.
fonte
"Open Alpha Testing" ou "Open Beta Testing" resolveram o problema para mim, depois de tentar todos os métodos sugeridos em toda a internet.
Vá para Android Developer Console -> Seu aplicativo -> APK e, em seguida, opte por usar o teste Open Alpha / Beta. Envie o link fornecido para você ou para os testadores.
Contanto que eles estejam logados com essa conta em seu dispositivo Android, eles podem testá-la.
Boa sorte
fonte
Eu enfrentei o mesmo problema, A solução para mim era enviar a versão atual do seu aplicativo para a Play Store, Se for para teste, envie-o para o canal Alfa ou Beta, eu fiz isso e o erro foi embora e os detalhes do preço são mostrados corretamente.
fonte
Pode haver três possibilidades:
Se você estiver testando, não há necessidade de publicar o aplicativo. Basta salvá-lo como um rascunho. E então espere algum tempo pode ser de 2 a 3 horas para ativar isso.
fonte
Para resolver esse problema, siga estas etapas:
Crie o produto no console do desenvolvedor do Google Play.
Salve e defina-o como "Ativo".
Faça upload do APK para o Google play.
NB: o faturamento no aplicativo pode não funcionar até 6 horas após a criação do seu produto na etapa 1.
fonte
A resposta mais votada cobre praticamente tudo, mas se você foi tão estúpido quanto eu ao apressar o processo de lançamento do aplicativo para continuar com os testes de IAPs, certifique-se de publicar o aplicativo na Play Store do país que está testando no! Uma maneira fácil de verificar isso no dispositivo é tocar no link 'baixe no Google Play' ao abrir o URL de permissão de teste. Se você receber um erro 'Item não encontrado' ao tentar abrir por meio da Google Play Store, é provável que seu aplicativo não tenha sido publicado lá. Encontrei esse problema porque estava carregando o aplicativo assinado corretamente via ADB e, embora os IAPs apareçam na compilação, você receberá este erro ao tentar comprá-los.
fonte
Ao comprar uma assinatura no aplicativo, eu tinha todos os itens da lista abaixo no lugar certo.
Criado apk assinado e publicado no canal alfa
Adicionados ids de e-mail de testador ao teste de licença
Adicionados ids de e-mail de testador ao teste alfa de faixa fechada
Optou por ser um testador
O ID de teste era diferente do ID da conta do desenvolvedor
Estava no dispositivo Android e não no emulador
Baixou o aplicativo da Play Store
Ainda estava recebendo este erro dizendo "O item que você estava procurando não foi encontrado" .
Depois de perder 2-3 dias, descobri que só funcionava se algum modo de pagamento fosse configurado na Play Store .
Embora a maioria das respostas esteja relacionada à compra do IAB antigo e eu implementei uma nova API de cliente de faturamento que é -
implementation 'com.android.billingclient:billing:1.0'
, não foi fácil encontrar a solução.Se este for o mesmo caso para alguém, adicionar um modo de pagamento pode ajudá-lo a superar esse erro. Você precisa adicionar um mesmo para testá-lo, no entanto, não será cobrado por ids de e-mail adicionados como testadores de licença.
fonte