Wir haben eine Android-App, die In App Billing v3 unterstützt. In unseren Tests funktionierte alles andere gut, aber wir fanden heraus, dass inaktive Produkte auch durch Abfragen des Inventars erhalten werden konnten.Wie blenden Sie die inaktiven Produkte in der App-Abrechnung aus?
Dies ist, wie wir unsere Google in App-Produkte Inventar Spielen Abfrage:
ArrayList<String> moreSkus = new ArrayList<String>();
moreSkus.add("gas");
moreSkus.add("premium");
mHelper.queryInventoryAsync(true, moreSkus, mGotInventoryListener);
...
IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
public void onQueryInventoryFinished(IabResult result, final Inventory inventory) {
if(inventory.hasDetails("premium")) {
System.out.println("Inactive product is also visible to app!");
}
}
};
Unter den beiden Produkten "Premium" inaktiv ist, aber die print-Anweisung in IabHelper.QueryInventoryFinishedListener ausgeführt wurde noch!
Gibt es eine Möglichkeit, nur aktive Produkte zu erhalten?
Wenn Sie wissen, dass Premium inaktiv ist, warum fragen Sie es ab? – Michael