मैप को स्थानीय भाषा में दिखाना

डिफ़ॉल्ट भाषा की सेटिंग और मैप के इलाके का कोड बदलकर, मैप में इस्तेमाल की जाने वाली भाषा और इलाके की सेटिंग को पसंद के मुताबिक बनाया जा सकता है. इससे, तय किए गए देश या इलाके के हिसाब से मैप के काम करने के तरीके पर असर पड़ सकता है.

Maps 3D SDK for Android की कवरेज के बारे में जानने के लिए, Maps की कवरेज वाली टेबल देखें.

भाषा के हिसाब से स्थानीयकरण

डिफ़ॉल्ट रूप से, Maps 3D SDK for Android, मैप का कौनसी भाषा में अनुवाद दिखाना है, यह तय करने के लिए उपयोगकर्ता के डिवाइस पर कॉन्फ़िगर की गई भाषा की सेटिंग का इस्तेमाल करता है. हालांकि, इस डिफ़ॉल्ट ऐक्शन और सेटिंग को बदला जा सकता है. साथ ही, मैप को शुरू करते समय कोई खास भाषा सेट की जा सकती है. इसके अलावा, मैप शुरू होने के बाद, भाषा और इलाके की सेटिंग को डाइनैमिक तरीके से अपडेट किया जा सकता है.

भाषा सेट करने से, यूज़र इंटरफ़ेस (यूआई) कंट्रोल, टूलटिप, और कॉपीराइट नोटिस किस भाषा में दिखेंगे, इस पर असर पड़ता है. रनटाइम में, स्थानीय भाषा के अपडेट, मैप व्यू में दिखते हैं. हालांकि, ये अपडेट, यूज़र इंटरफ़ेस (यूआई) कंट्रोल, टूलटिप या इस तरह के अन्य एलिमेंट में नहीं दिखते. इससे, राजनीतिक सुविधाओं, डिस्क्रिप्टर, और प्राकृतिक सुविधाओं के अनुवाद पर भी असर पड़ता है. जैसे, "Geneva" को "Genève" या "lake" को "lac" में बदलना. साथ ही, राइट-टू-लेफ़्ट स्क्रिप्ट के लिए, टेक्स्ट रेंडर करने की दिशा भी बदल जाती है.

Maps 3D SDK for Android, स्थानीय भाषा के हिसाब से सेटिंग को इस क्रम में ढूंढता है. अगर पहले चरण में सेटिंग तय नहीं की जाती है, तो यह तय किए गए क्रम में सेटिंग ढूंढना जारी रखता है:

  1. रनटाइम अपडेट: LocaleOptionsका इस्तेमाल करके, आपके GoogleMap3Dइंस्टेंस पर setLocaleको पास की गई भाषा और जगह के हिसाब से प्राथमिकताएं.
  2. मैप शुरू करना: मैप बनाते समय तय की गई भाषा और जगह के हिसाब से प्राथमिकताएं. इन्हें, लेआउट एक्सएमएल में Map3DView पर map3d:language और map3d:region एट्रिब्यूट का इस्तेमाल करके या प्रोग्राम के ज़रिए Map3DInitConfig का इस्तेमाल करके तय किया जा सकता है.
  3. डिवाइस की सेटिंग: Android डिवाइस पर कॉन्फ़िगर की गई, सिस्टम की डिफ़ॉल्ट स्थानीय भाषा.

यहां दिए गए उदाहरण में, मैप को चाइनीज़ ("zh") में दिखाया गया है और इलाके को चीन ("CN") पर सेट किया गया है.

लेआउट एक्सएमएल फ़ाइल में भाषा और इलाके को कॉन्फ़िगर करने के लिए, map3d:language और map3d:region एट्रिब्यूट का इस्तेमाल Map3DView पर किया जा सकता है:

<com.google.android.gms.maps3d.Map3DView
    android:id="@+id/map3dView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    map3d:mapMode="hybrid"
    map3d:language="zh"
    map3d:region="CN" />

`LocaleOptions` LocaleOptions इंस्टेंस बनाकर, रनटाइम में भाषा और इलाके को डाइनैमिक तरीके से अपडेट भी किया जा सकता है. इसके लिए, ` setLanguage setLanguage` और ` setRegionsetRegion` की मदद से वैल्यू सेट करें. इसके बाद, इसे अपने ` GoogleMap3D GoogleMap3D` इंस्टेंस पर ` setLocale setLocale` को पास करें:

val localeOptions = LocaleOptions().apply {
    language = "zh"
    region = "CN"
}
googleMap3D.setLocale(localeOptions)

इलाके के हिसाब से स्थानीयकरण

map3d:region एक्सएमएल एट्रिब्यूट, region पर Map3DInitConfig, या setRegion पर LocaleOptions का इस्तेमाल करके, इलाके की सेटिंग तय की जा सकती है. इससे, मैप के अलग-अलग टाइल दिखाए जा सकते हैं या ऐप्लिकेशन को, इलाके के हिसाब से ज़्यादा सटीक नतीजे दिखाने के लिए सेट किया जा सकता है. इसके अलावा, इलाके का टैग सेट करने से यह पक्का होता है कि ऐप्लिकेशन, स्थानीय कानूनों का पालन करे. इसके लिए, ऐप्लिकेशन को जिस देश या इलाके में डिस्ट्रिब्यूट किया जा रहा है उसके हिसाब से, स्थानीय भाषा के सही विकल्प लागू किए जाते हैं.