Ist es möglich, lokal Debuggen Google Play in-app billing im Android Studio?
Ich bin immer diese Fehler-Tests von in-app-Abo-Produkte vor Ort.
Authentifizierung erforderlich ist. Sie müssen die Anmeldung in Ihrem google-Konto
War ich in der Lage zu überprüfen, die das Inventar für das Produkt, aber sollte ich nicht auch in der Lage sein, um es zu kaufen?
Gibt es eine Reihe von Beiträgen darüber nach, warum diese Fehler auftreten, die ich dachte, waren angesprochen:
- das Produkt ist veröffentlicht in der beta-Kanal mit in-app-billing aktiviert
- ich eingeloggt bin in den Play Store mit einem test-Benutzer lizenziert-Konto auf dem Gerät.
Ist der einzige Weg, um zu testen, tatsächliche Käufe in der beta - /alpha-Kanäle - nicht direkt aus android studio. Dieser post es vermuten lässt, möglich (siehe Screenshot).
http://developer.android.com/google/play/billing/billing_testing.html#billing-testing-test
InformationsquelleAutor jenson-button-event | 2016-03-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
In der Essenz, in-app-billing-Zahlungen können nur getestet werden, mit einem release-signed apk (die, die wir hochladen auf Google Play Console).
Hier sind einige Schritte, die mir angebracht, um eine signierte apk mit
Android Studio
:Bin ich auf Windows. Es hilft mit
adb.exe
im WEG, das ist für mich:In
AndroidManifest.xml
unterapplication
KnotenUnd in Ihrem
build.gradle
Datei unterandroid > buildTypes > release
hinzufügen:Erzeugen einer signierten APK aus Android Studio
Befestigen Sie Ihr Gerät für USB-debugging. Entfernen Sie die aktuelle Installation:
Run
- Menü die Letzte option "Attach debugger für Android-Prozess" - wählen Sie Ihr Gerät. Sie sind nun Debuggen.NB für in-app-billing-die build-Nummer muss übereinstimmen, die derzeit veröffentlicht auf Play Store
Wir brauchen xmlns:tools="schemas.android.com/tools" in AndroidManifest.xml.
Play store nicht erlauben debug-Version einer wahren
Sie machen diese temporären änderungen lokal, nachdem Sie erfolgreich eingesetzt, um app store...
Nach deiner Anleitung kann ich eigentlich Debuggen der release-signed apk, das ist toll, aber die in-app-billing funktioniert nicht, woraufhin Sie mich mit:
Error retrieving information from server. [DF-RPC-01]
. Es funktioniert, wenn ich installieren Sie die apk direkt aus dem play store (als alpha-tester), aber dann kann ich natürlich nicht Debuggen. Die Versionsnummern identisch sind. Irgendwelche Gedanken? Ich hatte keine Ahnung, Implementierung von in-app-Käufe wäre so frustrierend :/InformationsquelleAutor jenson-button-event
Vielleicht ein anderer Ansatz:
Ähnlich wie in den meisten Möglichkeiten, was hier erwähnt wird, außer Sie zeigen, um Ihre release-keystore in Ihrem debug-buildType.
Genauen Schritte:
1) In Ihre app Gradle-Datei im
android
Tags hinzufügen einer Freigabe der Unterzeichnung config:hinzufügen und die Unterzeichnung config, um Ihre debug-buildType:
2) Stellen Sie sicher, dass die
versionCode
undversionName
in Ihrem app gradle >defaultConfig
Abschnitt entspricht genau dem, was in der apk Sie hochgeladen, um die play store:3) Stellen Sie sicher, dass Sie die Abrechnung Berechtigung zu Ihrem manifest:
<uses-permission android:name="com.android.vending.BILLING" />
4) vergessen Sie nicht, fügen Sie Ihre IAB (In-App Billing) Produkte nach den docs
5) stellen Sie Ihre Breakpoints und debug gewohnt.
6) Nachdem Sie erfolgreich ausgetrickst Ihrem code, vergessen Sie nicht zu bereinigen, zumindest die änderungen in der gradle-Datei wie das entfernen der Unterzeichnung config, damit Ihr kestore die Kennwörter nicht im Umlauf im Raum.
Mit etwas Glück werden Sie in der Lage zu tun, das lokale Debuggen für Ihre IAB-Kodex.
Cheers.
InformationsquelleAutor SN Bliss
Ich nehme an, dass beim initialisieren von 'billing Helfer', stellen Sie es mit einem Base64 öffentlichen Schlüssel aus der Entwickler-Konsole. Dieser Schlüssel entspricht Ihrer Freigabe.
Die Nachricht, die Sie erhalten deutet darauf hin, dass Sie wahrscheinlich versuchen, führen Sie Ihre app im debug-Modus. Das bedeutet, dass die app signiert ist, mit der debug-Zertifikat (default). Wenn ich Recht habe, dass erklärt, warum Sie nicht authentifiziert werden.
Leider der einzige Weg, um zu testen die in-app-billing, ist in einer app signiert mit der Freigabe, auf ein Gerät angemeldet, um ein Konto, das definiert wird als "Gmail-Konten mit der Prüfung Zugriff" und Ihre app ist zu sein veröffentlicht auf Google Play (alpha/beta/Produktion).
wie kann ich eigentlich wechseln (android studio) release-Modus lokal Debuggen? (klingt falsch)
Umschalten zwischen build-Typen (debug/release) ist nur eine Frage der Klick auf die "Build-Varianten" panel (siehe Abbildung 2 hier: developer.android.com/tools/building/configuring-gradle.html). Aber das garantiert nicht die automatische Signierung. Check out this link: developer.android.com/tools/publishing/app-signing.html zu Lesen über die Unterzeichnung im release-Modus. Kurz gesagt, wenn Sie eine vorhandene keystore-Datei, können Sie es in den Gradle-build-Skript. Andernfalls verwenden Sie das widget (Build > Generate Signed APK).
InformationsquelleAutor dev.bmax
Die folgenden arbeitete für mich starten aus meiner IDE (Android Studio)
1) Gehen Sie zu Ihrem https://play.google.com/apps/publish/
Unter Entwickler-Account/Einstellungen/Konto-Daten/Lizenz-Prüfung
2) Fügen Sie die " Standard-Google-Play-E-Mail-Adresse dem entspricht, mit dem Gerät, das Sie testen
Quelle: https://engineering.memrise.com/faster-in-app-billing-subscriptions-testing-8e68551b4e2f
InformationsquelleAutor Mitch Thornton