MTK 添加新语言

MTK 添加新语言
1、修改ProductConfig.mk文件
在mediatek/config/${Project}/ProjectConfig.mk或者mediatek/config/common/ProjectConfig.mk文件中找到宏 MTK_PRODUCT_LOCALES,添加要新加的语言代码,例如斯瓦希里语(坦桑尼亚)是sw_TZ;
2、添加ICU资源

2.1添加ICU资源txt文件到对应的文件夹

把对应的txt文件放到external/icu4c/data目录下coll、curr、lang、locales、region,zone这些子文件夹中。如斯瓦希里语(坦桑尼亚)资源为sw.txt,s w_TZ.txt。
并修改这些目录下的resfiles.mk文件,coll目录下的是colfiles.mk。
如果这些目录下没有这些txt文件,可以在更高android版本或者在http://site.icu-project.org/ 网站下载。
如果要详细了解ICU资源可以参考FAQ04553。
2.2 修改编译配置文件

        把上一步添加的txt文件目录添加到external\icu4c\stubdata\icudt44l-large.txt(GB)上。
    其他版本的配置文件为:
    ICS:icudt46l-default.txt
    JB: icudt48l-default.txt
               KK:  icu-data-default.txt
    例如:

coll/sw.res
curr/sw.res;
lang/sw.res、
region/sw.res
zone/sw.res
sw.res
2.3 对于GB版本还需修改Android.mk
external/icu4c/studata
如下:
config := (word1,  (if (findstringsw, (PRODUCT_LOCALES)),large) \
……
2.4 编译ICU资源

参考FAQ04011

3、添加字库

参考 FAQ12255 和 FAQ04513

4、翻译字符串

(1)在frameworks/base/core/res/res/下新增加一个values-sw-rTZ的文件夹,新建一个strings.xml文件,把frameworks翻译内容放在这个文件内:
(2) 对每个app做翻译,在每个app对应的res目录下面建立values-sw文件夹,并将翻译好的strings.xml放在里面;
5、重新Build整个工程

6、如果所添加的语言在ISO_639-1没有定义2个字母编码.
(2)使用xx按照第2大步添加ICU资源
(4)ProjectConfig.mk文件的宏 MTK_PRODUCT_LOCALES处使用xx_YY.
7、对于一些复杂语言除了添加字库、icu资源和翻译以外,还需要有字体引擎,比如缅甸语,波斯语,藏语等。对于mtk支持的语言(FAQ03761)已有对于复杂语言的处理引擎,如果要添加新的复杂语言需要添加相应的处理引擎。一般复杂语言会具有如下部分特征:

 (1)显示或者输入方向从右到左 。
  (2)字符之间会发生变形或者替换。
  (3)一般复杂语言的使用的字符都是非iso8859编码格式(欧洲使用)和非中日韩字符。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值