progressive-web-apps - 使用 PWA Shortcuts 时,是否可以本地化快捷方式名称?
问题描述
我们的 PWA 在全球范围内使用,并为用户本地化。
如果我们使用 PWA 快捷方式,是否可以在 manifest.json 文件中本地化快捷方式名称?
https://web.dev/app-shortcuts/
例如,如果我们有一个名为“搜索”的快捷方式,我希望它以日语“検索”出现,以供在其操作系统中设置日语的用户使用。
解决方案
目前无法在清单中指定不同的语言字符串,唯一的方法是根据用户浏览器的语言提供不同的清单。
有两种选择:
Accept-Language
让服务器根据用户浏览器发送的 HTTP 标头返回不同的清单文件。- 检查用户首选语言后,在页面中添加(或更新)清单链接。
就个人而言,我会推荐第一个选项。对于所有用户,清单文件名将保持相同,并且不需要客户端代码,也不会以任何方式影响页面性能。
第二种需要 JavaScript 来更新清单链接,虽然成本不高,但运行的客户端代码越少越好。这也意味着每种语言都有自己的清单文件,因此如果我更改浏览器语言,可能会提示我再次安装 PWA,因为它现在是一个新的清单。
推荐阅读
- c++ - 为什么我的第二个 time_t 变量没有正确显示
- listview - 如何通过拖放重新排列 QML 列表
- java - Java/SpringBoot:验证加盐哈希返回错误哈希
- javascript - mongodb一对多关系数据库不断向帐户添加相同的字符
- kubernetes - 如何更新多容器 pod 中的容器映像
- javascript - 尝试使用赛普拉斯对 CSS 属性进行断言时出现“无效主题”
- apache-nifi - 如何仅在其他处理器完成执行时才运行处理器?
- firebase - 为什么 Firestore 忽略此复合查询的“array_contains”部分?
- c# - 是否可以使用存储密钥清除 azure cdn 端点?
- bash - 使用 whois 命令的 Bash 脚本在 docker 上出现“不支持 Servname ...”错误