跨平台、多用户协作的移动应用 (安卓+iOS) 多语言管理工具

6,550 阅读3分钟

1、项目背景

TranslateMyApp 项目是我之前为了在 Android 应用中集成多语言而开发的一个工具,当时主要为了解决应用的词条的多语言翻译问题,然而实际应用的时候发现起存在诸多的不便之处。最近当我开发 言叶APP 的时候,为了减少多语言维护的工作量,重新开发了这个应用。现在它具备了更多功能和特性,可以满足更多的应用场景。该项目基于 Python 开发,项目地址:Github

2、功能特性

  • 可应用多个移动应用平台:Android 和 iOS 皆可,两端可以共用一份多语言
  • 支持用户之间的协作,Android 开发、iOS 开发和产品经理可以共同维护一份多语言
  • 支持 GUI 操作,降低了上手难度,不懂程序一样可以使用
  • 软件支持多个运行环境:Windows 和 Mac 皆可运行
  • 环境配置非常简单,仅需要 Python3 环境以及几个 Python 包即可

3、使用步骤

该软件的设计思路是本地维护一份多语言仓库,增、删、改多语言词条都在该仓库完成。每次修改完成之后再使用该软件一键生成应用内的多语言词条。所以,我推荐你 Fork 我们的项目作为自己的多语言仓库,开发者和产品经理可以通过 Git 共同维护一份多语言。建议工作流:

Step 1:在 Github 或者 Gitee 上面 Fork 该项目作为自己的多语言资源仓库;

Step 2:准备环境。运行该 Python 程序需要做如下配置:

  1. 安装 Python3 环境;
  2. 安装 Excel 库并准备 Tkinter 环境;
pip install requests
pip install xlwt
pip install xlrd
pip install xlutils

Step 3:在项目的根目录下执行 python launcher.py 启动程序,进入仓库初始化界面:

项目初始化页面

这里你需要先选择 Android 或者 iOS 的多语言根目录,并勾选要维护的多语言,然后点击“初始化”来完成仓库初始化。

说明:这里各协作用户只要在自己的电脑上面选择自己项目根目录即可,使用 Git 进行同步的时候可以只同步仓库 repo.json 文件,而不同步本地的配置信息。

Step 4:完成项目初始化之后,再次使用 python launcher.py 启动项目。此时将进入应用的主界面:

项目主界面

部分功能说明:

  1. 更新词条:用来将客户端多语言词条的修改记录同步到仓库,比如增加或者修改了某个词条。
  2. 自助翻译:使用百度翻译平台平台进行多语言词条的自动翻译(需要在项目的 config 目录下面的 baidu.json 文件中填写在百度翻译平台申请的 app_id 和 app_secret)。
  3. 人工翻译:导出 Excel 修改之后再导入程序中来完成多语言翻译。
  4. 生成资源:分别生成 Android 和 iOS 各自的多语言资源文件。
  5. 校验资源:如果对 Android 和 iOS 多语言资源做了细微的修改可以通过这个功能将其同步到仓库中。

建议版本开发迭代过程中的多语言修改通过“更新词条”完成仓库调整,可以先使用“自助翻译”进行机器翻译减轻工作量,然后使用“人工翻译”进行校对,使用“生成资源”生成了多语言之后发现资源存在问题可以使用“校验资源”将本地修改同步到仓库。


  • 获取更多技术文章(Android、服务端、运维、Python 等)可以直接关注我的公众号「Hello 开发者