Ich habe an einer Android-App gearbeitet, die bereits bei Google Play veröffentlicht wurde. Für das nächste Update (versionCode = 3) möchte mein Kunde das LVL-Lizenzierungssystem integrieren.
Als erstes habe ich eine statische Testantwort vom Lizenzierungsserver erstellt. Ich setzte die Testantwort auf LIZENZIERT . Nachdem ich dies in der Dokumentation gelesen habe:
Diese Lizenztestantwort wird an Geräte gesendet, die oder die oben aufgeführten Testkonten für Anwendungen, die Sie auf Google Play hochgeladen haben. >Zusätzlich erhält dieses Konto (aber nicht die Testkonten) diese Antwort für >Anwendungen, die noch nicht zu Google Play hochgeladen wurden.
Ich dachte, das sei kein Problem, da die E-Mail meines Entwicklerkontos mit der E-Mail meines Google Play-Kontos auf meinen Testgeräten übereinstimmt. Ich sollte also die Testantwort erhalten, wenn ich die App debugge.
Danach habe ich alle anderen Lizenzierungsunterlagen und den Beispielcode durchgelesen und in die App integriert. Ich habe eine ServerManagedPolicy mit dem korrekten öffentlichen base64-Schlüssel und 20 zufällig generierten Bytes als Salt.
Nachdem alles gut aussah, lud ich es auf das Gerät hoch, um es zu testen, aber statt der LIZENZIERT Reaktion, die ich erwartet hatte, bin ich siempre Erhalt einer NICHT_LIZENZIERT Antwort. Ich ging zurück und stellte sicher, dass:
- Ich war mit dem Internet verbunden.
- Ich war in meinem Entwicklerkonto bei Google Play angemeldet.
- Der LicenseChecker hat den richtigen öffentlichen Schlüssel verwendet.
- Ich lösche meinen Google Play-Cache.
Zuerst dachte ich, dass es vielleicht etwas mit der Zwischenspeicherung zu tun hat, also habe ich versucht, eine StrictPolicy stattdessen. Dieselbe Antwort. Da ich die App nicht über den Store gekauft habe, habe ich den Eindruck, dass der Lizenzierungsserver normal zu antworten, anstatt die statische Testantwort zu senden . Hier sind einige andere Dinge, die ich ausprobiert habe:
- Warten Sie 24 Stunden und versuchen Sie es erneut.
- Ich habe versucht, die App sowohl mit dem Android-Debug-Schlüssel als auch mit dem aktuellen Verteilungsschlüssel zu erstellen.
- Einrichten und Verwenden eines anderen Testbenutzerkontos bei Google Play. Ich habe dafür gesorgt, dass dieses E-Mail-Konto zum Abschnitt "Testkonten" in der Entwicklerkonsole hinzugefügt wird.
- Die APK wird auf Google Play hochgeladen, aber nicht veröffentlicht.
- Erhöhen des versionCode von 2 auf 3. Dies ist interessant, denn anstatt zu antworten NICHT_LIZENZIERT gibt er den 'Anwendungsfehlercode' zurück ERROR_NOT_MARKET_MANAGED .
Dies führt mich zu der Annahme, dass der Lizenzserver immer normal antwortet, anstatt die statische Testantwort zu senden, die ich für mein Entwicklerkonto eingerichtet habe. Ich habe das Gefühl, dass es daran liegen könnte, dass die App bereits veröffentlicht ist, aber ich kann es nicht riskieren, einen Debug-Build zu veröffentlichen, nur um zu testen, ob es funktioniert oder nicht.
War jemand schon einmal in dieser Situation? Jede Hilfe wird sehr geschätzt.