Android应用程序打包时,出现错误:XXX is not translated in af

问题:当我们开发完成一个Android应用程序后,在发布该应用程序之前必须要经过的一步时打包应用程序。

至于从打包程序到发布的完整过程可以参考:Android 应用程序发布流程—碗豆荚发布流程

选择Eclipse ADT打包应用程序的过程如下:

可是在这时,会出现如下提示:

并且原本没有错误的程序(values/strings.xml)也会出现如下错误提示:

[html]view plain

"app_name"isnottranslatedin"af"(Afrikaans),"am"(Amharic),"ar"(Arabic),"bg"(Bulgarian),"ca"(Catalan),"cs"(Czech),"da"(Danish),"de"(German),"el"(Greek),"en-rGB"(English:UnitedKingdom),"en-rIN"(English:India),"es"(Spanish),"es-rUS"(Spanish:UnitedStates),"et-rEE"(Estonian:Estonia),"fa"(Persian),"fi"(Finnish),"fr"(French),"fr-rCA"(French:Canada),"hi"(Hindi),"hr"(Croatian),"hu"(Hungarian),"hy-rAM"(Armenian:Armenia),"in"(Indonesian),"it"(Italian),"iw"(Hebrew),"ja"(Japanese),"ka-rGE"(Georgian:Georgia),"km-rKH"(Khmer:Cambodia),"ko"(Korean),"lo-rLA"(Lao:LaoPeople’sDemocraticRepublic),"lt"(Lithuanian),"lv"(Latvian),"mn-rMN"(Mongolian:Mongolia),"ms-rMY"(Malay:Malaysia),"nb"(NorwegianBokml),"nl"(Dutch),"pl"(Polish),"pt"(Portuguese),"pt-rPT"(Portuguese:Portugal),"ro"(Romanian),"ru"(Russian),"sk"(Slovak),"sl"(Slovene),"sr"(Serbian),"sv"(Swedish),"sw"(Swahili),"th"(Thai),"tl"(Tagalog),"tr"(Turkish),"uk"(Ukrainian),"vi"(Vietnamese),"zh-rCN"(Chinese:China),"zh-rHK"(Chinese:HongKong),"zh-rTW"(Chinese:Taiwan,ProvinceofChina),"zu"(Zulu)

是什么原因呢?原因如下:

在Android SDK Tool r19之后, Export的时候遇到xxx is not translated in yyy, zzz的问题。

例如说"auto_name" is not translated in zh, zh_CN.

这是因为Android SDK Tool 將 ANDROID_LINT_COMPLETE_REGIONS 改为了需要检查。

如何解决呢?

其实,以上提示已经给我们答案。一种是“fix these before running Export ”,另一种是“turn off ‘Run full error check when exporting app’”

方法如下:

先说后者:“turn off ‘Run full error check when exporting app’“

(1)在Eclipse中打开Preference,按下图操作:

(2)再说前者:“fix these before running Export ”

操作如下图所示:

双击选择4,会在5的左侧出现对该问题的描述,如下:

框中也给我们三种解决方法。即:1》If the string should not be translated, you can add the attribute translatable="false" on the <string> element,

这种方法只适合数量较少的情况下。

2》字符串数量较大的情况,会很麻烦,这时可以采用另一种方法:

or you can define all your non-translatable strings in a resource file called donottranslate.xml.

即我们可以将所有不需要non-translatable 的字符串统一放入一个名叫donottranslate.xml的文件中。

在values新建donottranslate.xml文件,并把不需要non-translatable 的字符串放入其中.

donottranslate.xml:

[html]view plain

3》Or, you can ignore the issue with a tools:ignore="MissingTranslation" attribute.

第三种方法,就是用tools:ignore="MissingTranslation“ 属性直接忽略这个问题

以上操作完成后,最好选择“Clean”一下项目,方法如下:

这样就可以解决以上问题了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

因害怕失败而不敢放手一搏,永远不会成功

Android应用程序打包时,出现错误:XXX is not translated in af

相关文章:

你感兴趣的文章:

标签云: