一种iOSAPP字符串资源文件翻译方法及系统技术方案

技术编号:32026794 阅读:30 留言:0更新日期:2022-01-22 18:57
本发明专利技术公开了一种iOS APP字符串资源文件翻译方法,包括:加载源语言资源Bundle文件夹,获取源语言strings文件中字符串标识对应的源语言字符串,在iOS系统加载返回NSString对象,NSString对象的值为源语言字符串,创建对应的界面控件添加到APP显示界面;将每一个NSString对象与字符串标识和表名进行关联;根据翻译请求信息中控件标识获取对应的NSString对象,获取关联的表名和字符串标识,根据获取得到的表名和字符串标识以及目标语言字符串创建目标语言资源Bundle文件夹,目标语言资源Bundle文件夹包括目标语言strings文件,基于每一次翻译请求信息对所创建的目标语言strings文件进行更新,得到实时更新的目标语言资源Bundle文件夹。通过本发明专利技术能够实现实时翻译实时更新的功能。时翻译实时更新的功能。时翻译实时更新的功能。

【技术实现步骤摘要】
一种iOS APP字符串资源文件翻译方法及系统


[0001]本专利技术涉及字符串资源翻译
,尤其涉及一种iOS APP字符串资源文件翻译方法及系统。

技术介绍

[0002]对APP进行国际化是将APP服务推向全球的基本要求之一。APP国际化是指将APP中人机界面交互时出现的文字、声音、图片等翻译成不同语种,以满足不同国家和地区用户的使用需求,也就是“翻译”工作。APP国际化具体包括:用户界面(UI)中字符串资源的国际化、图片资源的国际化和音视频资源的国际化。其中,用户界面中的字符串是数量最为庞大、维护更新最为频繁的一类资源。
[0003]对APP字符串资源的国际化,现在一般分为两种做法:一种方案是在APP的用户界面设计阶段开始国际化工作,该方案是通过光学字符识别(OCR)等技术或者人工方式,提取设计图稿中的文字资源,将文字资源翻译成目标语言后,提供给开发人员,该方案的缺点是:国际化工作介入太早,后期在开发和测试阶段可能需要对界面进行修改迭代,会浪费前期国际化的工作成果;开发人员在软件开发过程中,需要同时维护多份目标语言资源Bund本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种iOS APP字符串资源文件翻译方法,其特征在于,所述方法包括步骤:S1、构建iOS APP可执行文件包,所述iOS APP可执行文件包中至少包括源语言资源Bundle文件夹,所述源语言资源Bundle文件夹至少包括一个源语言strings文件,每一个源语言strings文件包括多个字符串标识和多个源语言字符串,所述多个字符串标识和多个源语言字符串一一对应,每一个源语言strings文件用唯一的表名以标识;S2、加载所述源语言资源Bundle文件夹,获取每一个源语言strings文件中的每一个字符串标识所对应的源语言字符串,该源语言字符串在iOS系统加载返回对应的NSString对象,该NSString对象的值对应为所述源语言字符串,根据所述NSString对象至少创建一个界面控件,所述界面控件具有唯一的控件标识,基于每一个源语言字符串创建对应的界面控件,将每一个创建的界面控件添加到APP显示界面上,构建为一翻译界面;S3、将每一个NSString对象与字符串标识和表名进行关联;S4、接收来自所述翻译界面的翻译请求信息,所述翻译请求信息包括一触发的控件标识和对应的翻译后的目标语言字符串,根据所述触发的控件标识获取对应的界面控件在创建时提供的NSString对象,从NSString对象中获取关联的表名和字符串标识,并根据所述获取得到的表名和字符串标识以及对应的目标语言字符串创建目标语言资源Bundle文件夹,其中,所述目标语言资源Bundle文件夹包括对应该表名的目标语言strings文件,所述目标语言strings文件包括字符串标识和对应的目标语言字符串;S5、重复执行所述步骤S4,基于每一次翻译请求信息对所创建的目标语言strings文件进行更新,得到实时更新的目标语言资源Bundle文件夹。2.如权利要求1所述的iOS APP字符串资源文件翻译方法,其特征在于,所述方法还包括:根据获取的界面控件的控件标识获取对应的NSString对象,根据所述NSString对象获取该NSString对象所关联的字符串标识和表名;根据所述所关联的字符串标识和表名在所述目标语言资源Bundle文件夹查找到对应该表名的目标语言strings文件,并在所述目标语言strings文件中查找所关联的字符串标识所对应的目标语言字符串,若查找并加载成功,对加载成功的NSString对象关联字符串标识和表名后返回,NSString对象的值为所述目标语言字符串,在所述翻译界面上显示所述目标语言字符串;若查找不成功,则根据所述所关联的字符串标识和表名在所述源语言资源Bundle文件夹查找到对应该表名的源语言strings文件,并在所述源语言strings文件中查找所关联的字符串标识所对应的源语言字符串,若查找并加载成功,对加载成功的NSString对象关联字符串标识和表名后返回,NSString对象的值为所述源语言字符串,在翻译界面上显示所述源语言字符串,若查找不成功,则返回系统缺省值。3.如权利要求2所述的iOS APP字符串资源文件翻译方法,其特征在于,所述对加载成功的NSString对象关联字符串标识和表名的步骤具体包括:构建localizedStringForKey_replacement函数,该函数的接收参数包括key、value、table,key对应为字符串标识,value为缺省值,table对应为表名;加载字符串时,调用iOS字符串的接口,将localizedStringForKey_replacement函数代替iOS系统原有的localizedStringForKey函数执行字符串加载功能,并在字符串加载成
功之后,将加载成功的NSString对象关联字符串标识、缺省值以及表名后返回。4.如权利要求3所述的iOS APP字符串资源文件翻译方法,其特征在于,通过下面代码实现NSS...

【专利技术属性】
技术研发人员:杜绍江龙奕辰吴正华
申请(专利权)人:杭州行至云起科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1