Wie erhält man separate Preis- und Währungsinformationen für einen In-App-Kauf?
Ich bin Implementierung von in-app-Käufe bei Apps, die Unterstützung für mehrere Länder.
Den In-App-Billing Version 3 API Ansprüche, die:
Keine Währung Konvertierung oder Formatierung notwendig ist: die Preise sind gemeldet
in der Nutzer-Währung formatiert und entsprechend Ihrem Gebietsschema.
Dies ist tatsächlich stimmtda skuGetDetails()
kümmert sich um alle notwendigen Formatierungen. Die Antwort enthält ein Feld namens price
enthält die
Formatiert Preis des Elements, einschließlich seiner Währung zu unterzeichnen. Der Preis beinhaltet nicht die Kurtaxe.
Allerdings muss ich den ISO 4217 Währungs-code (abrufbar, wenn ich weiß der store locale) und die tatsächliche nicht-formatiert Preis (optimal in einen float oder decimal-variable) also ich kann die weitere Verarbeitung und Analyse selbst.
Analyse der Rückkehr von skuGetDetails()
ist nicht eine zuverlässige Idee, weil viele Länder teilen sich eine Währung-Symbole.
Wie bekomme ich die ISO 4217 Währungs-code und nicht formatiert Preis der in-app-Kauf mit dem In-App-Billing Version 3 API?
InformationsquelleAutor der Frage Panda Pajama | 2013-06-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vollständige Informationen finden Sie hieraber im wesentlichen, im August 2014 wurde dies behoben mit:
Die getSkuDetails () - Methode
Diese Methode gibt Produkt-details für eine Liste der Produkt-IDs. In der Antwort Bundle geschickt von Google Play, die Abfrage-Ergebnisse werden gespeichert in einer String ArrayList zugeordnet DETAILS_LIST-Taste. Jeder String in der Liste details enthält Produkt-details für ein einzelnes Produkt im JSON-format. Die Felder in der JSON-string mit den Produkt-details sind unten zusammengefasst
price_currency_code ISO 4217-Währungscode Preis. Zum Beispiel, wenn der Preis der angegeben ist, in britischen Pfund sterling, price_currency_code ist "GBP".
price_amount_micros Preis in Mikro-Einheiten, wo Sie 1.000.000 Mikro-Einheiten gleich eine Einheit der Währung. Zum Beispiel, wenn ein Preis "€7.99", price_amount_micros ist "7990000".
InformationsquelleAutor der Antwort Steven Craft
Können Sie nicht, dies wird derzeit nicht unterstützt. Es ist eine feature-Anfrage für ihn, aber es kann oder kann nicht umgesetzt werden.
https://code.google.com/p/marketbilling/issues/detail?id=93
InformationsquelleAutor der Antwort Nikolay Elenkov
Können Sie. Sie brauchen, um zu ändern SkuDetails.java wie im Bild unten gezeigt.
Schritte:
InformationsquelleAutor der Antwort marbdq
Hier ist mein workaround 🙂
Verwendung:
InformationsquelleAutor der Antwort Gil SH
Können Sie dies überprüfen
Die Android-Entwickler in ausgewählten Ländern bieten nun apps in verschiedenen Währungen zum Kauf über Google Wallet Merchant Center. Verkaufen Sie Ihre apps in anderen Währungen, müssen Sie den Preis der app in jedem Land/Währung. Eine Liste der unterstützten Länder/Währungen finden Sie in unserem Hilfe-center.
Wenn Sie eine app in der lokalen Währung des Kunden wird nur die app für den Verkauf in dieser Währung. Kunden werden berechnet in Ihrer lokalen Währung, aber die Zahlung wird ausgestellt in der Währung festgelegt, die in Ihrem Google Wallet Merchant Center-Konto.
InformationsquelleAutor der Antwort
Anderen hardcoded workaround Preis, Artikel für Länder, die mit dem gleichen symbol, anders von einem cent oder so. Beim abrufen der Preis des Artikels bei google play nach dem Kauf und Sie wissen, das abgerufen Währung ist eine, die in vielen Ländern eingesetzt, dh. $. Sie haben dann ein Protokoll von verschiedene Preise, die Sie auf Ihrem backend-server, und korrelieren Sie den Kaufpreis mit einem bestimmten Land.
InformationsquelleAutor der Antwort Codelicious
Sehr einfach. SKU gibt die Währung code ("price_currency_code" - Feld). Mit diesem code können Sie abrufen das symbol mit der Währung der Klasse.
Siehe den code angehängt:
InformationsquelleAutor der Antwort Asher Aslan