"app_name" is not translated in "af" (Afrikaans), "am" (Amharic), "ar" (Arabic), "bg" (Bulgarian), "ca" (Catalan), "cs" (Czech), "da" (Danish), "de" (German), "el" (Greek), "en-rGB" (English: United Kingdom), "en-rIN" (English: India), "es" (Spanish), "es-rUS" (Spanish: United States), "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: Lao People's Democratic Republic), "lt" (Lithuanian), "lv" (Latvian), "mn-rMN" (Mongolian: Mongolia), "ms-rMY" (Malay: Malaysia), "nb" (Norwegian Bokmål), "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: Hong Kong), "zh-rTW" (Chinese: Taiwan, Province of China), "zu" (Zulu)

Issue: Checks for incomplete translations where not all strings are translated

Id: MissingTranslation
If an application has more than one locale, then all the strings declared in one language should also be translated in all other languages.

If the string should not be translated, you can add the attribute translatable="false" on the <string> element, or you can define all your non-translatable strings in a resource file called donottranslate.xml. Or, you can ignore the issue with a tools:ignore="MissingTranslation" attribute.

By default this detector allows regions of a language to just provide a subset of the strings and fall back to the standard language strings. You can require all regions to provide a full translation by setting the environment variable ANDROID_LINT_COMPLETE_REGIONS.

You can tell lint (and other tools) which language is the default language in your res/values/ folder by specifying tools:locale="languageCode" for the root <resources> element in your resource file. (The tools prefix refers to the namespace declaration http://schemas.android.com/tools.)

根据错误提示的log,自己尝试 :

(1)忽略:tools:ignore="MissingTranslation" 和(2)指定文件的语言:tools:locale="zh-rCN"

结果:设置res/value/string.xml文件的 tools:ignore="MissingTranslation" 属性,可以忽略导出apk时产生的错误。

  1. <resources
  2. xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:tools="http://schemas.android.com/tools"
  4. tools:ignore="MissingTranslation"
  5. >
  6. <string name="app_name">XXXX</string>
  7. </resources>

—— - - - ——- - - —— - - - -- -—— —— —— - -—— - —— - -—— --—— - -—— ——-

—— - - - ——- - - —— - - - -- -—— —— —— - -—— - —— - -—— --—— -

以下是转载:

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

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

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

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

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

  1. "app_name" is not translated in "af" (Afrikaans), "am" (Amharic), "ar" (Arabic), "bg" (Bulgarian), "ca" (Catalan),
  2. "cs" (Czech), "da" (Danish), "de" (German), "el" (Greek), "en-rGB" (English: United Kingdom), "en-rIN" (English:
  3. India), "es" (Spanish), "es-rUS" (Spanish: United States), "et-rEE" (Estonian: Estonia), "fa" (Persian),
  4. "fi" (Finnish), "fr" (French), "fr-rCA" (French: Canada), "hi" (Hindi), "hr" (Croatian), "hu" (Hungarian), "hy-
  5. rAM" (Armenian: Armenia), "in" (Indonesian), "it" (Italian), "iw" (Hebrew), "ja" (Japanese), "ka-rGE" (Georgian:
  6. Georgia), "km-rKH" (Khmer: Cambodia), "ko" (Korean), "lo-rLA" (Lao: Lao People's Democratic Republic),
  7. "lt" (Lithuanian), "lv" (Latvian), "mn-rMN" (Mongolian: Mongolia), "ms-rMY" (Malay: Malaysia), "nb" (Norwegian
  8. Bokmål), "nl" (Dutch), "pl" (Polish), "pt" (Portuguese), "pt-rPT" (Portuguese: Portugal), "ro" (Romanian),
  9. "ru" (Russian), "sk" (Slovak), "sl" (Slovene), "sr" (Serbian), "sv" (Swedish), "sw" (Swahili), "th" (Thai),
  10. "tl" (Tagalog), "tr" (Turkish), "uk" (Ukrainian), "vi" (Vietnamese), "zh-rCN" (Chinese: China), "zh-rHK" (Chinese:
  11. Hong Kong), "zh-rTW" (Chinese: Taiwan, Province of China), "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:

  1. <span style="font-size:14px;"><?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <string name="app_name">UMengDemo</string>
  4. <string name="action_settings" >Settings</string>
  5. <string name="sharePic_text" >分享本地图片</string></span><pre name="code" class="html" style="text-indent: 0.10000000149011612px;"><span style="font-size:14px;"></resources></span>

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

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

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

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

http://blog.csdn.net/cxc19890214/article/details/39120415

转载:http://blog.csdn.net/buaaroid/article/details/49469213

Android APP打包时,出错:"XXX" is not translated in "af" (Afrikaans), "am" (Amharic), "ar" (Arabic).....的更多相关文章

  1. Android Studio 打包时 Signature Version 选择V1还是V2 ?

    只勾选V2会导致 7.0 以下的安卓机出现 INSTALL_PARSE_FAILED_NO_CERTIFICATES 的问题 ,推荐全选. 解决方案一v1和v2的签名使用1)只勾选v1签名并不会影响什 ...

  2. Android SDK安装时出错“android Failed to rename directory”的解决方法

    Android SDK安装时出错"android Failed to rename directory"的解决的方法     安装Android SDK时遇到Failed to r ...

  3. delphi XE7 在Android编译SharedActivity时出错

    delphi XE6 在Android编译SharedActivity时正常,但xe7下编译出错,在uses添加Androidapi.Helpers就可以.

  4. dedecms新建内容模型“把数据保存到数据库附加表时出错‘xxx’出错”错误的原因分析和解决方案(转)

    把数据保存到数据库附加表 `bc_addonarticle17` 时出错,请把相关信息提交给DedeCms官方.INSERT INTO `bc_addonarticle17`(aid,typeid,r ...

  5. Android Studio 打包时 Signature Version 选择 V1 V2 说明

      问题描述(v1和v2) Android 7.0中引入了APK Signature Scheme v2,v1是jar Signature来自JDKV1:应该是通过ZIP条目进行验证,这样APK 签署 ...

  6. 上传到 App Store 时出错。

      Try this, it fixed it for me. Open Terminal and run: cd ~ mv .itmstransporter/ .old_itmstransporte ...

  7. Android APP打包错误,Could not resolve com.android.tools.lint:lint-gradle:26.1.2.

    1.Please select the product flavors to build and sign 不专业的翻译一下(请选择产品的味道来制作和签名)什么鬼: 选中Flavors中的选项即可: ...

  8. 将本地jar包手动复制到Maven库中,在其它电脑上用Maven打包时出错

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/UP19910522/article/details/31396107 背景交代:在做图片水印时候引入 ...

  9. 使用Jenkins进行Android自动打包,自定义版本号等信息【转】

    之前App在提交测试和最终部署的过程中App打包一直是由开发人员来完成的,由于项目比较大, 再加上Android打包本身就比较慢,所以每次打包还是很耗时的.并且按照严格的研发流程来讲,开发人员应该只负 ...

随机推荐

  1. Vue2 全局过滤器(vue-cli)

    先看官方简介: 当前组件注册: export default { data () { return {} }, filters:{ orderBy (){ // doSomething }, uppe ...

  2. 第八章 Internet控制报文协议

    Internet控制报文协议 首先,我们必须先清楚,IP协议本身没有为终端系统提供直接的方法来发现那些发往目的地址失败的IP数据包,并且IP没有提供直接的方式来获取诊断信息,那么我们的故事来了. In ...

  3. MPLAB设置路径

    大家都知道在MPLAB环境下编译程序,c文件.h文件.编译器生成的文件等等,都会被编译器无情的放在一个项目文件夹下. 稍微有些讲究的程序员可能就会觉得用MPLAB项目组织的一团糟.于是大家想到了一种方 ...

  4. 在Eclipse中调用weka包实现分类

    1.如题. 最近写了一个FCM的聚类算法,希望能够可视化结果,因此一个想法是调用weka中的包,使自己的程序可以可视化.这里参考了网络上的方法,首先实现在Eclipse中调用weka包实现分类的功能. ...

  5. cdoj 1259 线段树+bitset 区间更新/查询

    Description 昊昊喜欢运动 他N天内会参加M种运动(每种运动用一个[1,m]的整数表示) 现在有Q个操作,操作描述如下 昊昊把第l天到第r天的运动全部换成了x(x∈[1,m]) 问昊昊第l天 ...

  6. 3.2 Lucene实战:一个简单的小程序

    在讲解Lucene索引和检索的原理之前,我们先来实战Lucene:一个简单的小程序! 一.索引小程序 首先,new一个java project,名字叫做LuceneIndex. 然后,在project ...

  7. python带header

    headers = { "Accept":"text/html,application/xhtml+xml,application/xml;", "A ...

  8. 怎么用tomcat对socket接口的程序进行调试

    对socket(套接字)的demo方法大多都是用main方法进行测试的,那如何用tomcat进行测试呢? 这里需要借助一个工具:工具的名字是:Sockettool.exe .下图是该工具的内容.连上监 ...

  9. js date扩展方法

    /* File Created: 四月 28, 2015 */ //日期加上天数得到新的日期 //dateTemp 需要参加计算的日期,days要添加的天数,返回新的日期,日期格式:YYYY-MM-D ...

  10. 结构型设计模式之享元模式(Flyweight)

    结构 意图 运用共享技术有效地支持大量细粒度的对象. 适用性 一个应用程序使用了大量的对象. 完全由于使用大量的对象,造成很大的存储开销. 对象的大多数状态都可变为外部状态. 如果删除对象的外部状态, ...