374 Stimmen

Diese Version der Anwendung ist nicht für die Abrechnung über Google Play konfiguriert

Wenn ich versuche, meine Anwendung mit In-App-Billing auszuführen, erhalte ich die Fehlermeldung: "Diese Version der Anwendung ist nicht für die Abrechnung über Google Play konfiguriert. Weitere Informationen finden Sie im Hilfecenter".

Ich habe die Berechtigung zur Rechnungsstellung bereits in der Manifestdatei und ich habe eine signierte .apk als Entwurf auf Google Play hochgeladen und ich habe diese signierte apk auch auf meinem Telefon installiert.

Kann mir jemand helfen, wie ich dieses Problem lösen kann?

412voto

Luten Punkte 5110

Dieser Fehler kann mehrere Ursachen haben.

Hier ist die Liste der Anforderungen für den Google IAB-Test.

Voraussetzungen:

  1. AndroidManifest muss enthalten "com.Android.vending.BILLING" Erlaubnis .
  2. APK ist eingebaut Freigabemodus .
  3. APK ist unterzeichnet con el Freigabebescheinigung(en) . (Wichtig: mit "App Signing by Google Play" funktioniert es nur, wenn Sie direkt vom GooglePlayStore herunterladen!)
  4. APK wird hochgeladen auf alpha/beta-Verteilung Kanal (vorher - als Entwurf) mindestens einmal an die Entwicklerkonsole zu senden. (dauert einige Zeit ~2h-24h ).
  5. IAB Produkte werden veröffentlicht und ihr Status wird auf aktiv .
  6. Testkonto(s) wurde(n) hinzugefügt in der Entwicklerkonsole.

Prüfanforderungen:

  1. Test APK hat die gleicher versionCode als die in die Entwicklerkonsole hochgeladene Datei.
  2. Test-APK ist unterzeichnet con el gleiche(s) Zertifikat(e) wie die in die dev.console hochgeladene Datei.
  3. Test-Konto (nicht Entwickler) - ist die Hauptkonto auf dem Gerät. (Das Hauptkonto ist möglicherweise nicht erforderlich - je nach @MinosL Kommentar)
  4. Test-Konto ist freigeschaltet als Testerin und es ist mit einer gültigen Zahlungsmethode verknüpft . ( @Kyone )

P.S: Debugging mit Freigabezertifikat : https://stackoverflow.com/a/15754187/1321401 (Dankeschön @dipp für den Link)

P.P.S: Ich wollte diese Liste schon lange erstellen.

Thnx @zlgdev , @Kyone , @MinosL für Aktualisierungen

207voto

Gatekeeper Punkte 6448

Ahh, ich habe die Lösung gefunden, nachdem ich es ein paar Stunden lang versucht habe.

  1. Google braucht eine Weile, um Anträge zu bearbeiten und auf seinen Servern zu aktualisieren, bei mir dauert es etwa einen halben Tag. Nachdem Sie die apk als Entwurf bei Google Play gespeichert haben, müssen Sie also einige Stunden warten, bevor die In-App-Produkte normal reagieren und reguläre Käufe ermöglichen.
  2. APK exportieren und signieren. Eine nicht signierte APK, die versucht, Käufe zu tätigen, führt zu einem Fehler.

148voto

sandalone Punkte 40194

Das Gleiche passiert, wenn Ihre veröffentlichte Version nicht mit der Version übereinstimmt, die Sie auf Ihrem Handy testen.

Die hochgeladene Version ist zum Beispiel android:versionCode="1" und die Version, die Sie auf Ihrem Telefon testen, ist android:versionCode="2"

107voto

Pablo Cegarra Punkte 18332

In der alten Entwicklerkonsole:

Settings -> Account details -> License Testing -> Gmail-Konten mit Testzugang und geben Sie hier Ihre Konten ein

In der neuen Entwicklerkonsole:

Setup -> License Testing -> Geben Sie Ihr Gmail-Konto ein, drücken Sie die Eingabetaste und klicken Sie auf "Speichern".

Google Play License testing

48voto

Chirag Patel Punkte 11068

Sie müssen Ihre APK mit Ihrem Live-Zertifikat signieren. Installieren Sie diese dann auf Ihrem Testgerät. Dann können Sie InAppBilling testen. Wenn Sie Ihre Anwendung durch direkte Ausführung über Eclipse auf dem Gerät (im Debug-Modus) testen, erhalten Sie diesen Fehler.

Wenn Sie Folgendes verwenden android.test.purchased als SKU angeben, wird es funktionieren, aber Sie werden nicht die developerPayload in Ihrer endgültigen Antwort haben.

Wenn Sie Ihren eigenen Entwurf in der App verwenden, können Sie den gesamten Vorgang testen, aber er wird Ihnen in Rechnung gestellt und Sie müssen ihn anschließend selbst erstatten.

Sie können keine Artikel mit demselben Google Mail-Konto kaufen, das Sie für die Google Play-Entwicklungskonsole verwenden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X