admin管理员组

文章数量:1530829

2024年7月22日发(作者:)

(19)中华人民共和国国家知识产权局

(12)发明专利说明书

(21)申请号 CN2.3

(22)申请日 2014.05.16

(71)申请人 广东欧珀移动通信有限公司

地址 523860 广东省东莞市长安镇乌沙海滨路18号

(72)发明人 杨辉 曾元清

(74)专利代理机构 广州市华学知识产权代理有限公司

代理人 李盛洪

(51)

H04L29/08

H04L29/06

(10)申请公布号 CN 103986765 A

(43)申请公布日 2014.08.13

权利要求说明书 说明书 幅图

(54)发明名称

一种利用网络同步android多国语

言的方法

(57)摘要

本发明涉及一种利用网络同步

android多国语言的方法,该方法定义了一

种词条的格式设置,提供了一套完整的词

条上传、翻译、下载、写入的流程,并规

定了词条导入导出时的对比规则,该方法

具体包括词条初始化、词条导出、词条翻

译和词条导入四个步骤。利用该方法,在

android平台下利用网络翻译的词条可以自

动的写入到android语言资源中,同时可以

自动将未翻译的词条上传给服务器,并将

词条导入、导出功能结合在一起,精简操

作步骤节约人力,将多个独立翻译源与服

务器连通,便于分布化翻译。

法律状态

法律状态公告日

法律状态信息

法律状态

权 利 要 求 说 明 书

1.一种利用网络同步android多国语言的方法,其特征在于,定义了一种词条的格

式设置,提供了一套完整的词条上传、翻译、下载、写入的流程,并规定了词条导

入导出时的对比规则,所述方法包括:

步骤S1、词条初始化,对每一个新增词条初式化设置为<key,value>;

步骤S2、词条导出,将词条从客户端上传至服务器,客户端定时通过版本控制工

具逐条导入词条key值的修改部,将差异部分词条的key和valule值上传到服务器,

服务器对比key值,如果不相等则写入待翻译数据库,等待翻译;

步骤S3、词条翻译,服务器将等待翻译的词条统筹分配到翻译源,待翻译源将词

条翻译完成后又将翻译词条的内容同步至服务器;

步骤S4,词条导入,客户端会定时从服务端下载多国语言词条,对比下载多国语

言词条与本地词条标准语言的key值,当词条key值完全一样时,会导入到客户端。

2.根据权利要求1所述的利用网络同步android多国语言的方法,其特征在于:

所述词条初始化设置<key,value>中key值为词条的ID值,某一国语言的内容,

以及所属模块,value值表示其多国语言集合。

3.根据权利要求1或2所述的利用网络同步android多国语言的方法,其特

征在于,步骤S2具体为:

步骤S21、利用版本控制工具查找判断词条是否有上一次提交记录;

步骤S22、如果存在上一次词条提交的记录,获取上一次词条提交记录的版本号;

如果不存在上一次词条提交的记录,则定义该次词条提交记录为最早提交的版本号,

并跳至步骤S26;

步骤S23、对比上一次提交版本词条与最新版本词条的差异内容;

步骤S24、将差异内容分解为所属模块值、ID值、某一国语言的内容,然后将分

解后的数据保存到文件中;

步骤S25、提取上一次导出词条到当前差异内容,将差异内容分解为所属模块值、

ID值、某一国语言的内容,然后将分解后的数据保存为上传格式的文件;

步骤S26、上传到服务器;

步骤S27、服务器获取数据;

步骤S28、判断上传词条的key值与数据库中词条数据的相应key值是否相等;

步骤S29、如果不存在一样的词条,词条所属的模块值、ID值、某一国语言的内

容三者不完全一样,则写入服务器数据库,等待翻译;如果存在一样的词条,如果

所属的模块值、ID值、某一国语言的内容三者完全一样,则对比下一词条。

4.根据权利要求1或2所述的利用网络同步android多国语言的方法,其特

征在于,步骤S4具体为:

步骤S41、下载数据,定时从服务器下载指定时间段内的翻译词条;

步骤S42、以本地指定标准语言依据词条key值对比方法对比下载词条与本地词条

的key值;

步骤S43、如果所属的模块值、ID值、内容三者不完全一样,则key值不相同,转

而对比下一个下载的词条;

步骤S44、如果所属的模块值、ID值、内容三者完全一样,则key值相同,并且记

录key值相等本地词条的属性值;

步骤S45、以要写入的语言确定语言目录,并在语言目录中查找是否有该ID值对

应的词条;

步骤S46、如果找到该ID值对应的词条,则将保存的属性值以及下载的内容写入

到此词条中;

步骤S47、如果没有找到该ID值对应的词条,则新建一个此ID值的词条,然后将

保存的属性值以及下载的内容写入到此新建词条中。

5.根据权利要求4所述的利用网络同步android多国语言的方法,其特征在于:

所述词条key值对比方法为,首先对比词条所属模块值以及ID值,如果相同再对

比本地指定标准语言对应的内容,如果内容也相同,则认为key值相同。

6.根据权利要求1所述的利用网络同步android多国语言的方法,其特征在于:

所述的翻译源采用分布式设置,其中翻译源至少一个以上,并且采用有线和/或无

线的方式与服务器进行连接。

7.根据权利要求1或者2所述的利用网络同步android多国语言的方法,其

特征在于:

所述的版本控制工具为svn、csv或者vss。

8.根据权利要求3所述的利用网络同步android多国语言的方法,其特征在于:

所述的词条导出标志是词条导出的时间或者版本号。

说 明 书

技术领域

本发明涉及多国语言同步的技术领域,特别涉及一种利用网络同步android多国语

言的方法。

背景技术

在android平台进行多国语言开发时,一般不能获取到所有多国语言的词条,需要

等待翻译后,再写到多国语言资源文件中。另外在持续开发中,会添加新的词条,

这部分词条也需要翻译。现有技术提供了利用网络来翻译词条的方法,但是从网络

翻译的词条还需要手动的写入到android语言资源中,同时也不能自动的将未翻译

的词条上传给服务器。当词条,语言比较多的时候,这2个部分使用手工操作,将

会消耗很多人力。

本发明提供了一种方法,可以从本地与服务器同步android平台下的词条,以节约

人力。

发明内容

本发明的目的在于克服现有技术的缺点与不足,提供一种利用网络同步android多

国语言的方法。

本发明的目的通过下述技术方案实现:

一种利用网络同步android多国语言的方法,定义了一种词条的格式设置,提供了

一套完整的词条上传、翻译、下载、写入的流程,并规定了词条导入导出时的对比

规则,所述方法包括:

步骤S1、词条初始化,对每一个新增词条初式化设置为<key,value>;

步骤S2、词条导出,将词条从客户端上传至服务器,客户端定时通过版本控制工

具逐条导入词条key值的修改部,将差异部分词条的key和valule值上传到服务器,

服务器对比key值,如果不相等则写入待翻译数据库,等待翻译;

步骤S3、词条翻译,服务器将等待翻译的词条统筹分配到翻译源,待翻译源将词

条翻译完成后又将翻译词条的内容同步至服务器;

步骤S4,词条导入,客户端会定时从服务端下载多国语言词条,对比下载多国语

言词条与本地词条标准语言的key值,当词条key值完全一样时,会导入到客户端。

优选的,所述词条初始化设置<key,value>中key值为词条的ID值,某一国语

言的内容,以及所属模块,value值表示其多国语言集合。

优选的,所述步骤S2具体为:

步骤S21、利用版本控制工具查找判断词条是否有上一次提交记录;

步骤S22、如果存在上一次词条提交的记录,获取上一次词条提交记录的版本号;

如果不存在上一次词条提交的记录,则定义该次词条提交记录为最早提交的版本号,

并跳至步骤S26;

步骤S23、对比上一次提交版本词条与最新版本词条的差异内容;

步骤S24、将差异内容分解为所属模块值、ID值、某一国语言的内容,然后将分

解后的数据保存到文件中;

步骤S25、提取上一次导出词条到当前差异内容,将差异内容分解为所属模块值、

ID值、某一国语言的内容,然后将分解后的数据保存为上传格式的文件;

步骤S26、上传到服务器;

步骤S27、服务器获取数据;

步骤S28、判断上传词条的key值与数据库中词条数据的相应key值是否相等;

步骤S29、如果不存在一样的词条,词条所属的模块值、ID值、某一国语言的内

容三者不完全一样,则写入服务器数据库,等待翻译;如果存在一样的词条,如果

所属的模块值、ID值、某一国语言的内容三者完全一样,则对比下一词条。

优选的,所述步骤S4具体为:

步骤S41、下载数据,定时从服务器下载指定时间段内的翻译词条;

步骤S42、以本地指定标准语言依据词条key值对比方法对比下载词条与本地词条

的key值;

步骤S43、如果所属的模块值、ID值、内容三者不完全一样,则key值不相同,转

而对比下一个下载的词条;

步骤S44、如果所属的模块值、ID值、内容三者完全一样,则key值相同,并且记

录key值相等本地词条的属性值;

步骤S45、以要写入的语言确定语言目录,并在语言目录中查找是否有该ID值对

应的词条;

步骤S46、如果找到该ID值对应的词条,则将保存的属性值以及下载的内容写入

到此词条中;

步骤S47、如果没有找到该ID值对应的词条,则新建一个此ID值的词条,然后将

保存的属性值以及下载的内容写入到此新建词条中。

优选的,所述词条key值对比方法为,首先对比词条所属模块值以及ID值,如果

相同再对比本地指定标准语言对应的内容,如果内容也相同,则认为key值相同。

优选的,所述的翻译源采用分布式设置,其中翻译源至少一个以上,并且采用有线

和/或无线的方式与服务器进行连接。

优选的,所述的版本控制工具为svn、csv或者vss。

优选的,所述的词条导出标志是词条导出的时间或者版本号。

本发明相对于现有技术具有如下的优点及效果:

1.将词条导入,导出功能结合在一起,无需多次操作,节约人力。

2.将多个翻译源与服务器连通,便于分布化翻译。

d平台下的多国语言可以直接使用。

附图说明

图1是本发明客户端定时与服务器同步多国词条的整体流程图;

图2是本发明词条导出的步骤流程框图;

图3是本发明词条导入的步骤流程框图。

具体实施方式

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于

此。

实施例一

词条格式设置为<key,value>,此处key值包括三个子部分,分别为ID值,

(某一国语言的)内容,以及所属模块;value表示其多国语言集合。

假设该词条key值里面指定的某一国语言为中文,android系统平台下词条文件为

xml格式,中文语保存在”中文.xml”中。举例一个叫”测试”的应用需要使用此方法进

行同步,具体词条格式如下:

<string name="ok"msgid="12345">确定</string>

那么此词条key值的子部分的模块名为“测试”(该模块名是任意取定的,也可以指

定为其它名字),在对比时表示此词条为模块名为“测试”的模块所有。

其中“name="ok"msgid="12345"”定义为xml属性值,其中name这个属性在android

的词条中是必须有的,定义为key值的子部分的ID值;xml可以有可能多属性值,

但也可能有其它属性值,如msgid这样的属性值,其它属性值在对比确认相同后,

保存下来,写入到其它语言时,会将保存的属性也写入。但其它属性值不会上传,

这样可以减少上传文件的大小。

其中"确定"代表key值的子部分的中文词条内容。

value表示其多国语言集合,用语言加内容的形势来保存。比如说,当前繁体中文

和越南语有翻译,翻译的结果为:

"繁体中文台湾"为"確定"

"越南语"为

"繁体中文台湾"用TW来表示(也可以用其它约定值),"越南"用VN来表示。那么

这个词条为

<id=ok,chinese=确定,content=确定,TW=確定,>

其中"id=ok,chinese=确定,content=确定"为key值,"TW=確定,"为value

值。

实施例二

图1为客户端定时与服务器同步多国词条的整体流程图,图中示意了词条的一套完

整的上传、翻译、下载、写入的流程。

步骤S1,词条初始化;

对每一个新增词条初式化设置为<key,value>,认为同一个key值的的词条是

同一词条,此key值为词条的ID值,(某一国语言的)内容,以及所属模块;Value

表示其多国语言集合。

步骤S2,词条导出,即将词条从客户端上传至服务器;

客户端定时通过版本控制工具逐条导入词条key值的修改部分,将差异部分词条的

key和valule值上传到服务器。服务器对比key值,如果不相等则写入待翻译数据

库,等待翻译。

常用的版本控制工具有svn(Subversion)、csv(Concurrent VersionSystem)、

vss(Visual SourceSafe)等等。

步骤S3,词条翻译;

服务器将等待翻译的词条通过网络统筹分配到分布式设置的翻译源,其中翻译源至

少一个以上,待翻译源将词条翻译完成后又将翻译词条的内容同步至服务器。

步骤S4,词条导入;

客户端会定时从服务端下载多国语言词条,对比下载多国语言词条与本地词条标准

语言的key值,当词条key值完全一样时,会导入到客户端。

图2为词条导出的步骤流程框图,

步骤S21、利用版本控制工具查找判断词条是否有上一次提交记录;

步骤S22、如果存在上一次词条提交的记录,获取上一次词条提交记录的版本号;

如果不存在上一次词条提交的记录,则定义该次词条提交记录为最早提交的版本号,

并跳至步骤S26;

步骤S23、对比上一次提交版本词条与最新版本词条的差异内容;

步骤S24、将差异内容分解为所属模块值、ID值、(某一国语言的)内容,然后将分

解后的数据保存到文件中;

步骤S25、提取上一次导出词条到当前差异内容,将差异内容分解为所属模块值、

ID值、(某一国语言的)内容,然后将分解后的数据保存为上传格式的文件;

步骤S26、上传到服务器;

步骤S27、服务器获取数据;

步骤S28、判断上传词条的key值与数据库中词条数据的相应key值是否相等;

步骤S29、如果不存在一样的词条,词条所属的模块值、ID值、(某一国语言的)内

容三者不完全一样,则写入服务器数据库,等待翻译;如果存在一样的词条,如果

所属的模块值、ID值、(某一国语言的)内容三者完全一样,则对比下一词条。

图3是词条导入的步骤流程框图,

步骤S41、下载数据,定时从服务器下载指定时间段内的翻译词条;

步骤S42、与本地指定语言对比key值,以本地指定标准语言对比下载词条与本地

词条的key值,其中所述词条key值对比方法为,首先对比词条所属模块值以及

ID值,如果相同再对比标准语言对应的内容,如果内容也相同则认为key值相同;

步骤S43、如果所属的模块值、ID值、(某一国语言的)内容三者不完全一样,则判

定key值不相同,转而对比下一个下载的词条;

步骤S44、如果所属的模块值、ID值、(某一国语言的)内容三者完全一样,则判定

key值相同,并且记录key值相等本地词条的属性值;

步骤S45、在语言目录中查找是否有该ID值对应的词条;

其中,Android系统平台中多国语言目录是如下保存的:

res/values-国家语言编码,比如说,values-ZH-CN:简体中文,values-ro:俄罗斯语;

客户端通过要写入语言,确认语言目录,比如下载的此词条是俄罗斯语,就到

values-ro目录中去寻找,如果没有此目录,则会创建一个此写入语言的目录。

步骤S46、如果找到该ID值对应的词条,则将保存的属性值以及下载的内容写入

到此词条中;

步骤S47、如果没有找到该ID值对应的词条,则新建一个此ID值的词条,然后将

保存的属性值以及下载的内容写入到此新建词条中。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限

制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、

简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

本文标签: 词条语言翻译内容步骤