2012-01-20 17 views
11

मैं अपना ऐप स्थानीयकरण कर रहा हूं और समर्थित भाषा/क्षेत्र में से एक Espanol-419 है। एंड्रॉइड नामकरण सम्मेलन मूल्यों का समर्थन नहीं करता है-es-r419 लेकिन यह मान-एन-आरजीबी स्वीकार करता है। इसे काम करने के लिए मुझे किस नाम का उपयोग करना चाहिए?एंड्रॉइड स्थानीयकरण es-r419

उत्तर

12

मुझे नहीं पता कि आर 4 9 1 कहां से आता है। एकमात्र चीज जो मुझे लगता है कि यह एक एलसीआईडी ​​होगा लेकिन 41 9 रूसी के लिए है, या country code है, लेकिन 41 9 के लिए कुछ भी नहीं है। यहां स्पेनिश के लिए लोकेल कोड की एक सूची दी गई है, शायद आप जो चाहते हैं वह यहां है:

es-ar Spanish - Argentina 
es-bo Spanish - Bolivia  
es-cl Spanish - Chile 
es-co Spanish - Colombia 
es-cr Spanish - Costa Rica 
es-do Spanish - Dominican Republic 
es-ec Spanish - Ecuador 
es-sv Spanish - El Salvador 
es-gt Spanish - Guatemala 
es-hn Spanish - Honduras 
es-mx Spanish - Mexico 
es-ni Spanish - Nicaragua 
es-pa Spanish - Panama 
es-py Spanish - Paraguay 
es-pe Spanish - Peru 
es-pr Spanish - Puerto Rico 
es-es Spanish - Spain (Traditional) 
es-uy Spanish - Uruguay 
es-ve Spanish - Venezuela 

संदर्भ:

अद्यतन:

तो जाहिरा तौर पर 419 UN M.49 standardBCP 47 द्वारा इसे IETF भाषा टैग के लिए ली से है। गूगल के documentation on alternative resources says:

भाषा में दो अक्षरों ISO 639-1 भाषा कोड द्वारा परिभाषित किया गया है, वैकल्पिक रूप से एक दो अक्षर वाले ISO 3166-1-अल्फा -2 क्षेत्र कोड के बाद (लोअरकेस "r" से पहले)।

स्पष्ट रूप से (केवल "आर" द्वारा) आप देख सकते हैं कि ये मानक आईईटीएफ भाषा टैग नहीं हैं। दुर्भाग्यवश, मेरा मानना ​​है कि इसका यह भी अर्थ है कि आप 41 9 के बराबर उपयुक्त दो अक्षर क्षेत्र नहीं ढूंढ पाएंगे। आप official ISO list भी देख सकते हैं। यह वहां नहीं है, देशों के लिए केवल दो अक्षर टैग हैं। जाहिर है यह very common है जो 3-अंकों के टैग का समर्थन नहीं करता है।

एकमात्र समाधान जिसे मैं सोच सकता हूं es के लिए एक डिफ़ॉल्ट सेट प्रदान करना है और फिर es देशों के उपखंड के लिए एक और विशिष्ट सेट प्रदान करना है। आप प्रत्येक क्षेत्र (जैसे es-rAR) के लिए संसाधन प्रदान कर सकते हैं, जो आपको लगता है कि 41 9 के साथ मेल खाता है, लेकिन उस सूची को देखते हुए, मुझे लगता है कि यह विपरीत करना आसान होगा और es का उपयोग लैटिन अमेरिकी स्पेनिश के संसाधनों को प्रदान करने के लिए करें, और फिर प्रदान करें स्पेन के लिए es-rES के लिए संसाधन। es-rESes से अधिक विशिष्ट है, इसे प्राथमिकता लेनी चाहिए (यदि लोकेल मैच)।

+3

लैटिन अमेरिकी स्पेनिश http://www.iana.org/assignments/lang-tags/es-419 – Taranfx

+1

क्या उम्मीद है कि एक समाधान है के साथ अपडेट किया। – kabuko

+0

तो बस स्पष्ट करने के लिए, यदि आप केवल 'es' पैकेज प्रदान करते हैं, तो यह सभी' es' क्वालीफायर के लिए चुना जाएगा यदि आप अधिक विशिष्ट निर्दिष्ट नहीं करते हैं? –

6
es-r419 = es-rUS. 

रनटाइम उपयोगकर्ता विकल्पों के साथ स्थिरता के लिए फ़ोल्डर नाम values-es-rUS में बदलें।

जब आप लैटिन अमेरिका के लिए स्पेनिश अनुवाद का अनुरोध करते हैं, तो Google अनुवाद सेवाओं का उपयोग करते समय, आपको es-r419 फ़ोल्डर वापस प्राप्त होगा।

एओएसपी स्रोत को देखते समय, या settings->language and input->language में, आप स्पेनिश और स्पेनिश (संयुक्त राज्य) देखेंगे।

रनटाइम पर, का चयन भाषा = स्पेनिश (संयुक्त राज्य अमेरिका), आप values-es-r419 से खींचा तार नहीं देखेंगे, और निश्चित रूप से आप values-es-rUS

+0

स्पैनिश के लिए अधिक स्थानीय लोग केवल एएस-आरयूएस से उपलब्ध हैं, और जेट-गिल्केसन के मुताबिक, आप एंड्रॉइड 7.0 और बाद में, इन संयुक्त राष्ट्र एम 4 9 क्षेत्रों तक पहुंचने के लिए बी + एस + 41 9 लिख सकते हैं। – Liggliluff

3

एंड्रॉयड 7 से खींचा तार देखेंगे।0 (एपीआई स्तर 24) अधिक मजबूत संसाधन संकल्प लाता है, और स्वचालित रूप से बेहतर गिरावट पाता है। हालांकि, संकल्प को तेज करने और रखरखाव में सुधार करने के लिए, आपको सबसे आम माता-पिता बोली में संसाधनों को स्टोर करना चाहिए। उदाहरण के लिए, यदि आप values-es-rUS निर्देशिका में स्पेनिश संसाधनों को संग्रहीत कर रहे थे, तो उन्हें values-b+es+419 निर्देशिका में ले जाएं, जिसमें लैटिन अमेरिकी स्पेनिश शामिल है।

https://developer.android.com/guide/topics/resources/multilingual-support.html

संबंधित मुद्दे