Android应用支银手薯持多语言,包括同一种语言的变种(方言),比如就英语而言有,
en-rGB 英国英语
en-rUS 美国英语
en-rCA 加拿大英语
...
如果想处理这些变种里翻译不同的地方,可以创建多份语言资源,放到应薯茄用程序源代码里对应的资源目录,这样build出apk,用户安装以后,应用程序会自动根据用户手机里的语锋者言设置选择对应的字符串显示。
/res/values-en-rGB/strings.xml
/res/values-en-rUS/strings.xml
/res/values-en-rCA/strings.xml
类似地,就西班牙语而言也有很多变种,你可以判断一下这些客户使用的是哪个变种,然后分目录存放对应的翻译。
es 一般的西班牙语(general)
es-rAR 阿根廷西班牙语
es-rBO
es-rCL
es-rCO 哥伦比亚西班牙语
es-rCR
es-rDO
es-rEC
es-rES 卡斯蒂利亚西班牙语 (西班牙人听说读写用的)
es-rGT
es-rHN
es-rMX 墨西哥西班牙语
es-rNI
es-rPA
es-rPE
es-rPR
es-rPY
es-rSV
es-rUS 美国西班牙语
es-rUY
es-rVE
...
添加方法是有的,网上可以找到很多。不过很麻烦,以下以添加波斯语为例给你简单的说下悄李:1、在sdkDemo.mk 中添加语言和国家的国际化的缩写代码,如伊朗:IR表示,波斯语用fa表示,这是国际化的标准,不可以随便写的。如果不知道国家与地区的缩写,可以去网上找找。
PRODUCT_LOCALES:= fa_IR en_US zh_CN en_GB fr_FR it_IT es_ES ……..
sdkDemo.mk的路径为:gingerbread\device\rockchip\sdkDemo\sdkDemo.mk.
2、在framework/base/data/font目录下添加波斯语的字库,如DroidSansArabic.ttf
3、字库加完后,就要去调用字库了,调用字库的文件是在external/skia/src/ports/SKFontHost-android.app下,
static constFontInitRec gSystemFonts[] = {
{ "DroidSans.ttf", gSansNames },
………
{
"DroidSansArabic.ttf",
gFBNames},
4、字库准备好了,还有一些makefile需要修改了。在external/icu4c/studata/ Android.mk下:
config := $(word1, \
$(if $(findstringar,$(PRODUCT_LOCALES)),large) \
$(if
$(findstring fa,$(PRODUCT_LOCALES)),large) \
5、 在frameworks/base/core/res/res/下新增加一个values-fa-rIR的文件夹模运庆,并新建一个strings.xml文件。
6、上面五步加完后,在settingsàLanguage&keyboardàSelect language列表下就会出现波斯语这个选项了,但是选了波斯语后,并没有出现波斯语文字。这时就需要在相应的APP下的res/下新建values-fa-rIR的文件夹,并翻译strings.xml文件即可。如主app的strings.xml路径为:gingerbread\packages\apps\Desktop2D_mbx_new\res\values-fa-rIR\strings.xml
最后,以上所有内容都加好后,一定要记得:
Make clean
Make prebuild
Make
建议你还是刷新旦握ROM来解决吧!
反首辩旦编译framework-res.apk,然后找到反编译后的文件夹,在res文件夹下有一些values的文件夹。
,
如图,zh-rHK是香港的繁体中灶芹文,想者扰添加语言就按照里面的格式来吧
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)