Lint: "<key> <language>" त्रुटियों में अनुवाद नहीं किया गया है इसे कैसे अनदेखा करें?


189

मैं हमारे एंड्रॉइड ऐप को संकलित / डिबग नहीं कर सकता, क्योंकि स्थानीयकरण फ़ाइलें अभी तक सही नहीं हैं।

मेरे आईडीई के सत्यापन उपकरण लिंट ने यह कहते हुए त्रुटियां पैदा की:

newCardsOrderVals का अनुवाद ar, bg, ca, cs में नहीं है

चींटी के साथ संकलित / स्थापित करना / चलाना ठीक काम करता है, लेकिन मैं डिबगिंग को आसान बनाने के लिए अपनी आईडीई का उपयोग करना चाहूंगा।

क्या इस विशेष चेक को बंद करने का कोई तरीका है, या आदर्श रूप से इसे त्रुटि के बजाय चेतावनी देना है?

मैं समझता हूं कि रिलीज से पहले हमें वास्तव में स्थानीयकरण फ़ाइलों को प्राप्त करने की आवश्यकता होगी, लेकिन समय के लिए यह प्राथमिकता नहीं है क्योंकि स्क्रीन को स्वयं बहुत बार संशोधित किया जा रहा है।


1
क्या यह कॉन्फ़िगर करने का कोई तरीका है जिसे सभी भाषाओं में "अनुवादित नहीं" के रूप में चिह्नित किया गया है। मुझे "es, he, and iw" जैसी त्रुटियां मिलती हैं। मुझे वे भाषाएँ क्यों मिलती हैं? मैं केवल "एन" पर सेट को प्रतिबंधित करने के लिए अपने एंड्रॉइड ऐप को कैसे कॉन्फ़िगर करूं?
inder

@ बाइंडर: हो सकता है कि आपके रेज / फोल्डर में "वैल्यूज़-हे" आदि जैसी निर्देशिका हों?
निकोलस राउल

1
नहीं, मेरे पास ऐसी कोई निर्देशिका नहीं है। केवल, मान, लेआउट और ड्रॉबल।
inder

7
es, वह और iw फेसबुक SDK लाइब्रेरी से आते हैं।
21

2
यह एंड्रॉइड लिंट का एक बग है: code.google.com/p/android/issues/detail?id=50525
altumano

जवाबों:


348

Android स्टूडियो:

  • "फ़ाइल"> "सेटिंग" और खोज बॉक्स में "MissingTranslation" टाइप करें

ग्रहण:

  • विंडोज / लिनक्स: "विंडो"> "प्राथमिकताएं"> "एंड्रॉइड"> "लिंट एरर चेकिंग" में
  • Mac: "ग्रहण"> "प्राथमिकताएँ"> "Android"> "लिंट त्रुटि जाँच"

MissingTranslationलाइन ढूंढें , और इसे Warningनीचे देखे गए अनुसार सेट करें:

अनुपलब्ध अनुवाद, में अनुवादित नहीं है


2
... यह "विंडो"> "प्राथमिकताएं"> "एंड्रॉइड"> "लिंट एरर चेकिंग" के तहत है
ओली बेनेट

2
यह मददगार है, लेकिन मुझे यह समस्या बहुत लंबे समय तक नहीं आई, जब तक कि यह अचानक सामने नहीं आया। और मुझे पता नहीं क्यों।
पक्तंग्यू १६'१४

आपके बहुमूल्य पोस्ट के लिए धन्यवाद
पवन असती

एंड्रॉइड स्टूडियो के तहत FYI करें यह "फ़ाइल"> "सेटिंग" और खोज बॉक्स में "MissingTranslation" है।
सहकर्मी

86

आप इस तरह की परिभाषा पर अनुवाद योग्य = "असत्य" विशेषता सेट कर सकते हैं:

<string name="account_setup_imap" translatable="false">IMAP</string>

अधिक जानकारी के लिए: http://tools.android.com/recent/non-translatablestrings


1
मैंने कहा "स्थानीयकरण फ़ाइलें अभी तक सही नहीं हैं "। उन्हें थोड़ा-थोड़ा करके भरा जा रहा है। अनुवाद करने योग्य = "गलत" किसी को भी अनुवाद करने से रोक देगा।
निकोलस राउल

3
जबकि उत्तर सीधे प्रश्न से संबंधित नहीं है, मुझे लगता है, यह मेरे जैसे लोगों के लिए शानदार समाधान प्रदान करता है जिन्होंने इस विषय को पाया था जब Google "कैसे लिंट बनाने के लिए मेरे ऐप स्थिरांक / मापदंडों के बारे में चिंता नहीं करता है"। धन्यवाद, Efor18!
उर्फ़_श

83

एक ढाल निर्माण में इसे अनदेखा करने के लिए इसे अपनी बिल्ड फ़ाइल के Android अनुभाग में जोड़ें:

lintOptions {
   disable 'MissingTranslation'
}

2
बहुत बहुत धन्यवाद, सचमुच उत्पादन के लिए सभी सही तारों को खोजने के मुझे दिन बचा लिया।
डी-कैंट

एक अच्छा, यह किया
Mirko

यह मेरे app मॉड्यूल के लिए जोड़ा गया यह मेरे लिए इसे प्यार करता था।
बुध

23

यह फ़ाइल में सभी स्ट्रिंग के लिए लापता अनुवाद त्रुटि को अनदेखा करने के लिए लिंट का कारण होगा, फिर भी यदि आवश्यक हो तो अन्य स्ट्रिंग संसाधन फ़ाइलों को सत्यापित किया जा सकता है।

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools" 
    tools:ignore="MissingTranslation">

यह संभवतः आगे बढ़ने का सबसे सही तरीका है, सभी परियोजना के लिए
एकमुश्त

11

यदि आप विशिष्ट स्ट्रिंग्स के बारे में चेतावनी को बंद करना चाहते हैं, तो आप निम्न का उपयोग कर सकते हैं:

strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>    

    <!--suppress MissingTranslation -->
    <string name="some_string">ignore my translation</string>
    ...

</resources>

यदि आप एक त्रुटि के बजाय विशिष्ट तारों पर चेतावनी देना चाहते हैं, तो आपको किसी विशिष्ट चीज़ के लिए गंभीरता की स्थिति को समायोजित करने के लिए एक कस्टम लिंट नियम बनाने की आवश्यकता होगी।

http://tools.android.com/tips/lint-custom-rules


1
+1 सभी के लिए एक बार करने का अच्छा तरीका, ताकि टीम के सभी डेवलपर्स को अपनी आईडीई सेटिंग्स को संशोधित न करना पड़े। पूरी तरह से दबाने के बजाय इसे चेतावनी देने का कोई तरीका?
निकोलस राउल

आप एक विशिष्ट चीज़ के लिए गंभीरता की स्थिति को समायोजित करने के लिए एक कस्टम लिंट नियम का निर्माण कर सकते हैं। वहाँ एक उदाहरण यहाँ है: tools.android.com/tips/lint-custom-rules
Eduko


8

इस तरह से संसाधन रूट टैब में अपनी /res/values.xml फ़ाइल में लाइनें जोड़ें:

<resources
xmlns:tools="http://schemas.android.com/tools" 
    tools:locale="en" tools:ignore="MissingTranslation">

उपकरण: स्थानीय भाषा को अंग्रेजी में सेट करते हैं, बाद में सभी संसाधन तार और उपकरणों के लिए भाषा अनुवाद की कोई आवश्यकता नहीं होती है: संसाधन स्ट्रिंग मानों के लापता अनुवादों के लिए लिंट को इग्नोर करने दें।


6

Android सेक्शन में अपनी ग्रेडल फ़ाइल का अनुसरण करें

    lintOptions {
       disable 'MissingTranslation'
    }

5

के अतिरिक्त,

निर्भरता की परियोजना नहीं, ग्रहण प्राथमिकताएँ।
मैक में, ग्रहण> वरीयताएँ

यहां छवि विवरण दर्ज करें


3

एक अन्य दृष्टिकोण यह है कि आप जिस भाषा का समर्थन करना चाहते हैं उसे इंगित करें और ग्रेड के साथ 'रेसकोनफिग्स' विकल्प का उपयोग करके बाकी को फ़िल्टर करें।

की जाँच करें यह अन्य जवाब जानकारी के लिए

यह बेहतर है, मुझे लगता है, क्योंकि आपको उन भाषाओं के लिए वैध अनुवाद गलतियों को पूरी तरह से अनदेखा करने की ज़रूरत नहीं है जिन्हें आप वास्तव में समर्थन देना चाहते हैं


1

आप उन संसाधनों को भी डाल सकते हैं, जिन्हें आप फाइल में अनुवाद नहीं करना चाहते हैं donottranslate.xml

उदाहरण और स्पष्टीकरण: http://tools.android.com/recent/non-translatablestrings


यह इसे करने का सबसे अच्छा तरीका है और यह व्यवस्थित है।
केल्विन पार्क

1

उनमें से कई के पास काम करने के अलग-अलग जवाब दिए गए हैं, और मुझे भी वही लिंट त्रुटियां मिलीं, जिन्हें मैं ग्रहण के साथ निम्न करके अनदेखा करता हूं।

  1. विंडोज पर क्लिक करें
  2. वरीयताओं पर क्लिक करें
  3. Android> लिंट त्रुटि जाँच का चयन करें।
  4. सभी> लागू करें> ठीक पर ध्यान न दें पर क्लिक करें।

बस।


2
यह सभी लिंट वरीयताओं को अनदेखा करेगा। न केवल लापता अनुवाद
लुसियानो रोड्रिगेज

1

निम्नलिखित ने मेरे लिए काम किया।

  • विंडोज पर क्लिक करें
  • वरीयताओं पर क्लिक करें
  • Android> लिंट त्रुटि जाँच का चयन करें।
  • प्रासंगिक लिंट चेकिंग खोजें और चुनें और
  • गंभीरता को 'अनदेखा' (नीचे दाईं ओर) पर सेट करें
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.