问题:当我们开发完成一个Android应用程序后,在发布该应用程序之前必须要经过的一步时打包应用程序。
这样就可以解决以上问题了。
至于从打包程序到发布的完整过程可以参考: Android 应用程序发布流程---碗豆荚发布流程
更新ADT至22.6.0版本之后,出现了这个库,appcompat_v7是Google自己的一个兼容包,就是一个支持库,能让2.1以上全使用上4.0版本的界面。例如使用ActionBar,不需要再使用第三方的支持库了。
当项目绑定了谷歌官方提供的兼容包appcompat_v7,打包项目时往往会遇到问题,如下所示:
选择Eclipse ADT打包应用程序的过程如下:
可是在这时,会出现如下提示: |
并且原本没有错误的程序(values/strings.xml)也会出现如下错误提示: [html] view plaincopy
是什么原因呢?原因如下: 在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 plaincopy
3》Or, you can ignore the issue with a tools:ignore="MissingTranslation" attribute. 第三种方法,就是用tools:ignore="MissingTranslation“ 属性直接忽略这个问题 以上操作完成后,最好选择“Clean”一下项目,方法如下: |
这样就可以解决以上问题了。