2016-07-29 6 views
2

Ich versuche eine App zu erstellen, in der Benutzer Preise für Produkte in der Währung ihres eigenen Landes eingeben können (wobei das Währungssymbol an einen EditText angehängt ist) und dann die Werte in eine Datenbank hochladen. Ich habe bereits die Standard-Locale-Klasse ausprobiert, aber sie verwendet die Konfiguration des Benutzers, sodass Leute wie ich, die US-Englisch auf ihren Geräten außerhalb der USA verwenden, nur Werte in US-Dollar eingeben können. Außerdem ist das Abrufen der Informationen von der SIM-Karte in einigen Fällen nicht sinnvoll. Wie erhalten Apps wie eBay oder sogar der Play Store diese Informationen? Das einzige, was ich mir vorstellen kann, ist das GPS des Geräts. Wenn ja, wie extrahiert man die Information? Und wenn nicht, was soll ich tun?Was ist der beste Weg, um die Währung des Benutzers auf einem Android-Gerät zu erhalten?

+0

Sie können die Währung erkennen, indem Sie die Sprache des Benutzers erkennen. Ich denke, die Verwendung des GPS ist kein geeigneter Weg, dies zu tun. –

+0

@CyprienAubry Ich kenne viele Leute in meinem Land zum Beispiel, die Englisch verwenden, weil es bequemer ist. Und dennoch können die meisten Apps, die mit Geld in Verbindung stehen, die Währung unabhängig von der Sprache bestimmen. – Ofir

+0

Okay, vielleicht können Sie mehrere Informationen wie die Benutzersprache mit dem Google-Profil oder der GPS-Position korrelieren. –

Antwort

1

die SIM-Karte prüfen sein kann, eine gute Idee

TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);  
Currency.getInstance(new Locale("", telephonyManager.getNetworkCountryIso())); 

Ich bin in der EU leben, aber unter Verwendung von US-Locale für mein Smartphone, weil ich Englisch bevorzugen. Der Code gibt mir die EUR-Währung

Verwandte Themen