Test ortamındaysanız
1) android.test.purchased durumunda, sahte ödemeyi android cihazı yeniden başlatarak sıfırlayabilirim (envanteri tüketebilirim).
2) InApp util'de Security.java adlı bir dosya var ve bunu geçici olarak aşağıdaki gibi yapın. Test ödemesi (sahte) güvenlik istisnası nedeniyle her zaman yanlış döndürdüğünden.
public static boolean verifyPurchase(String base64PublicKey,
String signedData, String signature) {
return true; }
Sonra OnIabPurchaseFinishedListener içinde fechInvForconsumeItem ()
IabHelper.OnIabPurchaseFinishedListener mPurchaseFinishedListener
= new IabHelper.OnIabPurchaseFinishedListener() {
public void onIabPurchaseFinished(IabResult result,
Purchase purchase)
{
if (result.isFailure()) {
// Handle error
Log.e("123","Failure");
return;
}
else if (purchase.getSku().equals(ITEM_SKU)) {
Log.e("123","PURCAsed");
fechInvForconsumeItem(); // Restart device if not consume
}
}
};
FechInvForconsumeItem ()
public void fechInvForconsumeItem() {
mHelper.queryInventoryAsync(mReceivedInventoryListener);
}
IabHelper.QueryInventoryFinishedListener mReceivedInventoryListener
= new IabHelper.QueryInventoryFinishedListener() {
public void onQueryInventoryFinished(IabResult result,
Inventory inventory) {
if (result.isFailure()) {
// Handle failure
Log.e("11","Failure");
} else {
Log.e("11","suc");
mHelper.consumeAsync(inventory.getPurchase(ITEM_SKU),
mConsumeFinishedListener);
}
}
};
Dinleyiciyi Tüket (şimdiki değeri)
IabHelper.OnConsumeFinishedListener mConsumeFinishedListener =
new IabHelper.OnConsumeFinishedListener() {
public void onConsumeFinished(Purchase purchase,
IabResult result) {
if (result.isSuccess()) {
} else {
// handle error
Log.e("11","sucConsume");
}
}
};