Ich versuche, Upgrades/Downgrade-Abonnements in meiner Android App zu implementieren. Ich glaube, ich habe alles korrekt implementiert, aber es scheint nicht korrekt zu laufen während meiner Tests.Android IAP getBuyIntentToReplaceSkus storniert nicht das alte Abonnement
Meine App hat drei Optionen: Monats-, 3-Monats- und 6-Monats-Abonnementoptionen. Wenn ich eine Option abonniere, rufe ich die folgende Funktion auf: 'sku' ist der Sku für den gekauften Artikel und 'oldSkus' ist der Skus für die anderen Artikel.
buyIntentBundle = mService.getBuyIntentToReplaceSkus(5,
mContext.getPackageName(), oldSkus, sku, itemType, extraData);
Als ich in die 3-Monats-Option subscribe es funktioniert großartig und die App korrekt empfangen einen 3-Monats-Abonnement Kauf aus dem Play Store. Wenn ich an die 6-Monats-Abonnement zu aktualisieren versuchen, die folgenden Fluss auftritt:
- Dialog ‚Abonnement ändern‘ ist mein ‚Current-Plan‘ aufgefordert, die Bereitstellung und den ‚Neuen Plan‘ -> Klicken Sie auf ‚Weiter‘
- Plandetails sind umrissen. Klicken Sie auf -> 'Abonnieren' -> 'Bestätigen'
- Die Transaktion ist erfolgreich und Kaufdaten werden an die App zurückgegeben.
- Erhalte E-Mail behauptet Abonnement mit Details wurde aktualisiert:
- Zurück-Plan: 3 - Monate: Cancelled
- Neuer Plan: 6 - Monate: sofort aktiv
- Go Store-Account zu spielen und Ausblick Abonnements
- 3 Monat Plan - Abonnierte mit Abbrechen-Taste
- 6 Monate Plan - Abonnierte mit Cance l Taste
- App starten und Beobachter GetInventory Ergebnisse
- 3-Monats-Plan - Benutzer abonniert
- 6 Monate Plan - Benutzer abonniert ist
Soweit ich kann sagen Sie, dass das alte Abonnement vom Play Store nicht korrekt abgebrochen wurde. Meine Hoffnung ist, dass dies nur passiert, weil ich ein Tester-Konto benutze und der $/Tag, der beim Testen von Abonnements auftritt, verursacht einige Probleme mit der Pro-Bewertung.
UPDATE: Google hat auf mein Ticket geantwortet und mir mitgeteilt, dass sie das Problem eskaliert haben. Ich werde wieder aktualisieren, wenn ich eine weitere Antwort bekomme.
Ich teste das jetzt auch. Ich habe ähnliches Verhalten. – gswierczynski
Anruf beim Google Play-Entwickler Api gibt das Abonnement zurück, das abgebrochen werden soll. Returns autoRenewing = true. Hinweis: https://developer.android.com/google/play/billing/billing_subscriptions.html gibt an, dass das Abonnement storniert wurde (und gemäß https://developers.google.com/android-publisher/api-ref/Käufe/Abonnements/Kündigungen storniert (nicht widerrufen) Abonnements sind bis zum Ende des Abonnements gültig, obwohl es im Upgrade-Szenario nicht sinnvoll ist). Ich würde gerne etwas Google dazu lesen. – gswierczynski
Haben Sie es vielleicht in der Produktion versucht? – gswierczynski