diff --git a/AUTHORS b/AUTHORS index 134347801..65c883dc7 100644 --- a/AUTHORS +++ b/AUTHORS @@ -54,6 +54,7 @@ Kevin Xue (NetDragon Websoft Inc., China) Lachezar Dobrev Luiz Silva Luka Finžgar +Malte Starostik Manuel Kasten Marcelo Mateusz Jędrasik diff --git a/android/res/values-de/strings.xml b/android/res/values-de/strings.xml index 321e8a830..2b7b31e6b 100644 --- a/android/res/values-de/strings.xml +++ b/android/res/values-de/strings.xml @@ -51,16 +51,16 @@ SMS Adresse Text Löschen - Historie löschen - Barcode Scanner Historie + Verlauf löschen + Barcode Scanner Verlauf Leer Es wurden keine Barcodes aufgezeichnet. - Historie senden - Historie + Verlauf senden + Verlauf MECARD verwenden vCard verwenden Hilfe - Historie + Verlauf Einstellungen Senden Bulk-Modus: Barcode gescannt und gespeichert @@ -88,33 +88,33 @@ Unbekannte Seite Sie können Daten weitergeben, indem Sie einen Barcode auf Ihrem Bilschirm erzeugen und mit einem anderen Handy einscannen. Hier ist der gescannte Barcode-Inhalt - Oder geben Sie einen Text ein. + Oder geben Sie einen Text hier Sind Sie sicher? Leider kann nicht auf die SD-Karte zugegriffen werden. Wenn ein Barcode erkannt wurde\u2026 - Autofokus benutzen + Autofokus verwenden Scannt und speichert mehrere Barcodes nacheinander - Bulk-Scan-Modus - In Zwischenablage kopieren - Ersetzen: %s = Inhalt, %f = Format, %t = Typ des Inhalts + Massenscan + In die Zwischenablage kopieren + Platzhalter: %s = Inhalt, %f = Format, %t = Typ Eigene Such-URL 1D Barcodes Data Matrix QR Codes Geräteabhängige Problemumgehung Nur Standard-Fokus-Modus verwenden - kein kontinuierlicher Fokus - keine Belichtungsmessung + Kein kontinuierlicher Fokus + Keine Belichtungsmessung Verbessert bei einigen Mobiltelefonen das Scannen bei schwachem Licht, kann aber Überbelichtung verursachen. Funktioniert nicht mit allen Handys. Foto LED einschalten Allgemeine Einstellungen Einstellungen Piepsen - Speichern mehrerer Scans des gleichen Barcodes in der Historie + Speichern mehrerer Scans des gleichen Barcodes im Verlauf Duplikate speichern Ergebnis-Einstellungen Beim Scannen von Barcodes, dekodieren\u2026 - Land auswählen + Land für die Suche Erfahren Sie mehr über Barcode Weitere Informationen abrufen Barcode Scanner+ testen diff --git a/android/res/values-sv/strings.xml b/android/res/values-sv/strings.xml index 12260245e..a84a49dc8 100644 --- a/android/res/values-sv/strings.xml +++ b/android/res/values-sv/strings.xml @@ -18,43 +18,43 @@ Barcode Scanner Applikationer Bokmärken - Lägg till i kalendern + Lägg till i kalender Lägg till kontakt Tillbaka Boksökning Avbryt Anpassad sökning - Ring nummer + Slå nummer Klar - Skicka email - Hämta instruktioner + Skicka e-post + Få anvisningar Shopper Skicka MMS OK Öppna webbläsare - Produktsökning - Sök bokinnehåll + Produktsök + Sökinnehåll Applikation Bokmärke - Dela via email + Dela via e-post Dela via SMS Klippbord Kontakt Visa karta Skicka SMS - Webbsökning + Webbsök Anslut till nätverk Kontaktinfo - Emailadress + E-postadress Geografiska koordinater Telefonnummer SMS-adress - Ren text + Vanlig text Rensa Rensa historik - Streckkodsläsarens historik - Tomma - Ingen streckkod skannar har registrerats + Historik inskannade streckkoder + Tom + Inga inskannade streckkoder har registrerats Skicka historik Historik Använd MECARD @@ -63,77 +63,77 @@ Historik Inställningar Dela - Bulk-läge: streckkod skannas och sparas - Tyvärr, Androidens kamera fick problem. Du kan behöva starta om enheten. + Bulk-läge: streckkod har inskannats och sparats + Det uppstod tyvärr ett fel med Androidkameran. Format Metadata Hej Placera steckkoden inom sökarens rektangel för att läsa den. Tid Typ - Kunde inte skapa en streckkod från de givna uppgifterna. + Det gick inte att avkoda en streckkod från den erhållna informationen. Google Books Google Product Search - Google Shopper är inte installerat - Google Shopper kombinerar streckkodsskanning med priser, recensioner och mer utan att öppna webbläsaren. Vill du prova det? - Tyvärr, den önskade applikationen kunde inte startas. Streckkodens innehåll är kanske ogiltigt. - Omdirigera - Tyvärr, denna bok är inte sökbar. - Tyvärr, sökningen stötte på problem. - Ingen sida mottagen + Google Shopper är inte installerad + Google Shopper kombinerar inkodning av streckkoder med lokala priser och priser på nätet, recensioner och mycket mer utan att du behöver öppna webbläsaren. Vill du testa det? + Den begärda applikationen kunde tyvärr inte startas. Streckkodens innehåll kan vara ogiltigt. + Omdirigering + Den här boken är tyvärr inte sökbar. + Det uppstod tyvärr ett fel vid sökning. + Ingen sida funnen Sida - Resultaten + Resultat Söker bok\u2026 - Klippet finns inte + Utdrag ej tillgängligt Okänd sida - Du kan dela data genom att visa en streckkod på din skärm och läsa den med en annan telefon. - Detta är vad en streckkod jag skannade innehöll - Eller skriv in text + Du kan dela information genom att visa en streckkod på din skärm och sedan skanna in den med en annan telefon. + Här är innehållet i en streckkod som jag har skannat in + Eller skriv in text och tryck Enter Är du säker? - Tyvärr är SD-kortet inte tillgänglig. - När en streckkod hittats\u2026 + SD-kortet är tyvärr inte tillgängligt. + När en streckkod hittas\u2026 Använd autofokus - Skanna och spara många streckkoder kontinuerligt - Bulk skanningsläget - Kopiera till klippbordet - Ersättare: %s = innehåll, %f = format, %t = typ - Anpassad sök-URL + Skanna och spara flera streckkoder samtidigt + Bulk-inskanningläge + Kopiera till urklipp + Ersättningar: %s = innehåll, %f = format, %t = typ + Anpassad sökning URL 1D steckkod Data Matrix - QR-koder - Device Bug Lösningar - Använd endast standard fokusläge + QR Code + Bugglösningar för enhet + Använd endast standardfokusläge Ingen kontinuerlig fokus Ingen exponering - Aktivera ljuset framför, om det finns. Fungerar inte på alla telefoner. - Ljuset framför + Förbättrar inskanning i svag belysing på vissa telefoner, men kan orsaka bländning. Ej tillgängligt på vissa enheter. + Använd frontljus Grundläggande inställningar Inställningar - Pip - Lagra flera skanningar av samma streckkod i historiken - Kom ihåg dubbletter + Ton + Lagra flera inskanningar av samma streckkod i historik + Kom ihåg dubletter Resultatinställningar - När du skannar för streckkoder, avkoda\u2026 + När du skannar in streckkoder, avkoda\u2026 Sök land - Försök att hämta mer information om streckkodens innehåll + Försök hämta mer information om streckkodens innehåll Hämta mer info Prova Barcode Scanner+ Förstärkt med nya funktioner och gränssnitt Vibrera Hittade kontaktinformation - Hittade kalenderpost - Hittade emailadress + Hittade kalenderhändelser + Hittade e-postadress Hittade geografiska koordinater Hittade bok Hittade produkt Hittade SMS-adress Hittade telefonnummer - Hittade ren text + Hittade vanlig text Hittade URL - Hittade Wi-Fi inställningar - Google boksökning + Hittade WLAN-konfiguration + Google Book Search Dela via streckkod - Begära anslutning till nätverk\u2026 + Begär anslutning till nätverk\u2026 Nätverksnamn Typ diff --git a/android/src/com/google/zxing/client/android/LocaleManager.java b/android/src/com/google/zxing/client/android/LocaleManager.java index ace13fd92..f3ba9140e 100644 --- a/android/src/com/google/zxing/client/android/LocaleManager.java +++ b/android/src/com/google/zxing/client/android/LocaleManager.java @@ -37,19 +37,6 @@ public final class LocaleManager { private static final String DEFAULT_COUNTRY = "US"; private static final String DEFAULT_LANGUAGE = "en"; - private static final String COUNTRY; - private static final String LANGUAGE; - static { - Locale locale = Locale.getDefault(); - COUNTRY = locale == null ? DEFAULT_COUNTRY : locale.getCountry(); - String language = locale == null ? DEFAULT_LANGUAGE : locale.getLanguage(); - // Special case Chinese - if (Locale.SIMPLIFIED_CHINESE.getLanguage().equals(language)) { - language += "-r" + COUNTRY; - } - LANGUAGE = language; - } - /** * Locales (well, countries) where Google web search is available. * These should be kept in sync with our translations. @@ -141,19 +128,6 @@ public final class LocaleManager { public static String getBookSearchCountryTLD(Context context) { return doGetTLD(GOOGLE_BOOK_SEARCH_COUNTRY_TLD, context); } - - private static String doGetTLD(Map map, Context context) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); - String countryOverride = prefs.getString(PreferencesActivity.KEY_SEARCH_COUNTRY, null); - if (countryOverride != null && countryOverride.length() > 0 && !"-".equals(countryOverride)) { - String tld = map.get(countryOverride); - if (tld != null) { - return tld; - } - } - String tld = map.get(COUNTRY); - return tld == null ? DEFAULT_TLD : tld; - } /** * Does a given URL point to Google Book Search, regardless of domain. @@ -165,8 +139,40 @@ public final class LocaleManager { return url.startsWith("http://google.com/books") || url.startsWith("http://books.google."); } + private static String getSystemCountry() { + Locale locale = Locale.getDefault(); + return locale == null ? DEFAULT_COUNTRY : locale.getCountry(); + } + + private static String getSystemLanguage() { + Locale locale = Locale.getDefault(); + if (locale == null) { + return DEFAULT_LANGUAGE; + } + String language = locale.getLanguage(); + // Special case Chinese + if (Locale.SIMPLIFIED_CHINESE.getLanguage().equals(language)) { + return language + "-r" + getSystemCountry(); + } + return language; + } + public static String getTranslatedAssetLanguage() { - return TRANSLATED_HELP_ASSET_LANGUAGES.contains(LANGUAGE) ? LANGUAGE : DEFAULT_LANGUAGE; + String language = getSystemLanguage(); + return TRANSLATED_HELP_ASSET_LANGUAGES.contains(language) ? language : DEFAULT_LANGUAGE; + } + + private static String doGetTLD(Map map, Context context) { + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); + String countryOverride = prefs.getString(PreferencesActivity.KEY_SEARCH_COUNTRY, null); + if (countryOverride != null && countryOverride.length() > 0 && !"-".equals(countryOverride)) { + String tld = map.get(countryOverride); + if (tld != null) { + return tld; + } + } + String tld = map.get(getSystemCountry()); + return tld == null ? DEFAULT_TLD : tld; } }