Ich arbeite in einer Android-Anwendung, in der ich ein Inapp-Billing-Abonnement implementieren möchte. Ich habe eine Abonnement-ID in der Google Play Developer Console mit einem Zeitraum von sieben Tagen erstellt.
Ich muss den Nutzer jedes Mal benachrichtigen, wenn beim Start der App die verbleibenden Tage für das Abonnement verbleiben. Wie kann ich die Trail-Periode für das Subscription-Abonnement pragmatisch erhalten? Ist dies der richtige Weg, um ein Inapp-Billing-Abonnement mit Trail-Zeitraum zu implementieren, wenn nein, bitte schlagen Sie mir die richtige Art vor, dies zu implementieren.
Ja, In-App Billing API Version 3 unterstützt eine Testphase! Dass ich nicht herausfinden konnte, ob es einen API-Aufruf gibt, der die Art von Details zu der Testphase angibt, die Sie in der Dokumentation benötigen, bedeutet nicht, dass es keine solche Klasse / Methode gibt.
Wenn Sie jedoch nur den Remote-Google-Dienst für den Abonnementstatus verwenden, wird der Benutzer nicht benachrichtigt, wenn er nicht mit einem Netzwerk verbunden ist. Vielleicht ist die fehlende Benachrichtigung, wenn sie nicht in einem Netzwerk ist, kein Problem. Aber angesichts dieser Einschränkung würde ich das Startdatum auch lokal aufzeichnen und behalten.
Sobald Sie die Ergebnisse des API-Aufrufs erfasst haben, mit dem der Benutzer den Testzeitraum starten kann, können Sie diese Daten lokal speichern. Es gibt drei "einfache" Möglichkeiten, lokale Daten beizubehalten: über Voreinstellungen (am einfachsten), schreibe eine lokale Datei (ein wenig härter) oder installiere und befülle eine SQLite-Datenbank (und das sogar noch schwerer). Ich benutze die Präferenzen die ganze Zeit und ist ziemlich einfach.
Wenn Sie die "lokalen" Daten für mehrere Android-Geräte zugänglich machen möchten (wenn Ihr Abonnementschema mehrere Geräte unterstützt), müssen Sie diese Daten stattdessen an einen Remote-Server senden. Und holen Sie die Daten bei Aktivitätsstart.
Halten Sie es einfach - Daten auf einem lokalen Gerät - Lesen Sie die lokale Einstellung, um zu sehen, wann der Test gestartet wurde, berechnen Sie die Anzahl der verbleibenden Tage und präsentieren Sie eine Nachricht. Verwenden Sie auch den Google API-Aufruf, um den Abonnementstatus zu bestätigen. Im Falle eines Konflikts aktualisieren Sie entsprechend die lokale Einstellung.
Mit dieser Strategie kann der Benutzer beim Start der Anwendung / Aktivität über die verbleibende Testzeit informiert werden, ohne eine Google API zu verwenden, um Details des Testzeitraums zu erhalten. und als Bonus, unabhängig davon, ob der App-Benutzer in einem Netzwerk ist oder nicht.
Tags und Links android in-app-billing