android+添加波斯语与新添加一种系统不带的语言方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何添加一种新语言
钟斌
2011-12-16
前些时候,因为客户要求加波斯语,但是目前android2.3.1并没有这种语言,在客户要求一定要有波斯语的情况,经过长时间的摸索与在网上求助,终于将波斯语给加出来了。
下面讲讲新增加一种语言的步骤:
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 const FontInitRec gSystemFonts[] = {
{ "DroidSans.ttf", gSansNames },
………
{ "DroidSansArabic.ttf", gFBNames },
4.字库准备好了,还有一些makefile需要修改了。在
external/icu4c/studata/ Android.mk下:
config := $(word 1, \
$(if $(findstring ar,$(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