语言
语言切换
多语言的切换过程需要遵循最小权限原则(Principle of Least Privilege),在保证系统全链路语言初始化体验的前提下,优先响应用户在各应用中的主动选择,因此应用界面究竟应该显示什么语言,主要取决于以下 3 点,优先级由低到高:
- 操作系统
- 客户端(含浏览器)
- 应用
主动选择优先
当用户在应用中主动进行过语言的选择操作,应用需要记录用户的选择,并在该应用的所有终端版本中生效,在后续的使用中也需要保持一致。
做合理的初始选择
当用户没有进行过语言选择时,应用需要根据用户的统一认证语言设置,自动加载合适的语言。
1. 客户端场景
在客户端中加载的应用,需要获取客户端设置的语言进行加载,包含客户端内的 Webview 轻应用。
2. 网页场景
在浏览器中加载的网页应用,有可能存在以下 2 种情况:
- 登录页支持语言选择的场景(如SSO),需要获取用户在登录页中设置的语言进行加载。我们推荐登录页在默认情况下,获取浏览器的语言;
- 登录页不支持语言选择或免登录的浏览器场景,需要获取浏览器的语言进行加载;
跨端场景
在部分情况下,可能存在「浏览器」与「客户端」跳转的场景,建议遵循应用实际加载的场景环境的要求执行,即在哪里打开就遵循哪里的要求。
做好默认语言设定
当应用支持的语言缺失,无法响应外层传递的语言时,需要做好默认语言的设定,避免因语言缺失导致的应用崩溃。我们建议在应用中使用英文作为默认语言,但是也并非所有的应用都支持英文,因此整体原则是支持英文使用英文,不支持英文使用用户量最大的语言作为默认语言。
交互过程
语言列表
支持多语言的产品需要为用户提供可手动切换语言的功能,在语言列表中,我们建议按照语言的使用量进行排序,使用量最多的语言排在最前面,使用量最少的语言排在最后面。语言的名称需要使用对应语言翻译后的文案进行展示,并通过图标、文字等方式标明语言切换的功能属性,最大程度减少用户切换语言的障碍。
语言符号
- 不使用国旗代替语言。因为有可能一个地国家地区有多种语言,或者多个国家使用同一种语言。在选择语言页面一定要标明用户所在国家和使用的语言。比如加拿大,有英语区和法语区,香港有英语和中文两种官方语言。
- 政治敏感地区不要使用任何一种旗帜,可用占位符代替。
- 大区没有旗帜,可用占位符代替。