灵动课堂如何支持多语言?
灵动课堂目前支持中文、英文和西班牙语。如果你需要添加更多语言,只需要在指定目录找到语言相关的 key 值,进行修改即可。
Web 端多语言配置
Web 端源码中,主 SDK (Classroom SDK 和 Proctor SDK) 和插件(包括答题器、倒计时、投票器、环信 IM 模块)有各自单独的多语言文件。具体修改方法如下:
-
主 SDK:
-
在
packages/agora-classroom-sdk/src/infra/translate
目录下增加对应的 TypeScript 格式的语言文件(文件名只需要保证唯一性即可)文件内容可参考英语的语言文件,如下图所示: -
在
packages/agora-classroom-sdk/src/infra/api/index.tsx
文件中增加一行对应的addResourceBundle();
代码,位置如下图所示:
例如:你想要添加日语,那么你需要在
packages/agora-classroom-sdk/src/infra/translate
目录下增加一个jpn.ts
文件,并在packages/agora-classroom-sdk/src/infra/api/index.tsx
文件中合适的位置增加一行addResourceBundle('jp', jp);
。信息addResourceBundle()
中所填的参数只要具有唯一性且容易对应到该语言即可。 -
-
插件:
-
在
packages/agora-plugin-gallery/src/gallery/answer/i18n
目录下增加对应的文件夹(文件夹名只需要保证唯一性即可),在该文件夹内增加一个 TypeScript 格式的语言文件index.ts
,文件内容可参考英语(en
文件夹)或中文(zh
文件夹)的语言文件。以下为英语语言文件的内容: -
在
packages/agora-plugin-gallery/src/gallery/answer/i18n/config.ts
文件中增加一行import
声明和一行对应的addResourceBundle();
代码,位置如下图所示:
例如:你想要添加日语,那么你需要在
packages/agora-plugin-gallery/src/gallery/answer/i18n
目录下增加一个jp
文件夹,内有一个index.ts
文件,并在packages/agora-plugin-gallery/src/gallery/answer/i18n/config.ts
文件中合适的位置增加一行import jp from './jp';
声明和一行addResourceBundle(jp", jp);
代码。信息addResourceBundle()
中所填的参数只要具有唯一性且容易对应到该语言即可。 -
Android 端多语言配置
你需要在以下 3 个目录下增加对应的语言的文件夹(文件夹名只需要保证唯一性即可),在该文件夹内增加一个对应语言的 string.xml
文件,内容可参考英语(value
文件夹)或中文(value-zh
文件夹)的语言文件。
-
/AgoraClassSDK/src/main/res
-
/AgoraEduUIKit/src/main/res
例如:你想要添加日语,那么你需要在以上目录下增加一个
value-jp
文件夹,内有一个strings.xml
文件。
iOS 端多语言配置
参考如下步骤在 iOS 端添加多语言配置:
-
在
others
文件夹下,复制一个原有的语言文件夹(例如en.Iproj
),重命名为新语言对应的名称(例如jp.Iproj
)。信息文件夹名只要具有唯一性且容易对应到该语言即可,但后缀必须为
.lproj
。 -
把文件夹内的
Localizable.strings
文件里的value
都替换为新增语言对应的值。 -
在进入房间前,将
AgoraUIBaseViews
里的全局变量agora_ui_language
的指设置为新增语言对应的文件夹名,再进入房间即可生效。