Pessoal recentemente implantei em meu app (Guia de academia) o módulo de compras, onde vendo dois produtos.
Como podem ver só se a compra não falhou e o purchase não for null que eu salvo no preferences a liberação do produto. O que está errado ou estou deixando de confirmar?
-- No momento em que a google autoriza a compra eu envio para minha base o e-mail, produto e dispositivo do usuário para ter um controle de compras, porém hoje mesmo tenho apenas 1 compra confirmada e 2 canceladas e em meu servidor eu tenho 7 registros na data de hoje, ou seja 7 pessoas "compraram" estão usando meu produto porém a Google talvez cancelou dois pedidos, faturou um e 4 simplesmente nem sequer apareceram, alguém pode me explicar o que está acontecendo?
Vou postar um trecho do código onde confirmo a compra:
IabHelper.OnIabPurchaseFinishedListener compraFinalizadaListener = new IabHelper.OnIabPurchaseFinishedListener() { public void onIabPurchaseFinished(IabResult result, Purchase purchase) { progresso.dismiss(); if (mHelper == null) return; if (result.isFailure()) { if(result.getResponse() == 7){ //Item já comprado Suporte.alertar(tela, "Você já comprou este produto!"); salvarCompra(noAd); } else if(result.getResponse() == 1) Suporte.alertar(tela, "Você cancelou a compra!"); else if(result.getResponse() == 4) Suporte.alertar(tela, "Produto não disponível!"); else Suporte.alertar(tela, "Falha ao realizar compra!"); EasyTracker.getInstance(tela).send(MapBuilder.createEvent("Compra", "Falha ao comprar", "Resposta: "+result.getResponse(), null).build()); } else if(purchase != null){ if(!verifyDeveloperPayload(purchase)) { Suporte.alertar(tela.getApplicationContext(), "Falha ao realizar compra. Foi detectada uma tentativa de fraude!"); EasyTracker.getInstance(tela).send(MapBuilder.createEvent("Compra", "Tentativa de fraude", "Produto: "+purchase.getSku()+" - Payload: "+purchase.getDeveloperPayload(), null).build()); } else{ if (purchase.getSku().equals(noAd)) salvarCompra(noAd); else if(purchase.getSku().equals(getImage)) salvarCompra(getImage); Suporte.alertar(tela, "Compra realizada com sucesso!"); } } } };
Como podem ver só se a compra não falhou e o purchase não for null que eu salvo no preferences a liberação do produto. O que está errado ou estou deixando de confirmar?
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
0 comentários:
Postar um comentário