前言
猫哥在项目中也是有这个困惑,如何管理 多语言,如果常量定义方式,还是有点不优雅。
这篇文章的作者就提出了个不错的建议,服务端编辑,本地文件缓存同步。
就是读取数据库啦,后端弄个界面维护维护数据,貌似是一个不错的方案。
原文
https://medium.com/flutter-community/make-localization-by-custom-services-in-flutter-apps-519b5de32aae
代码
https://github.com/VB10/custom_localization
参考
- https://pub.dev/packages/easy_localization
正文
许多应用程序在客户端进行本地化。这意味着,如果您的密钥有任何问题,您必须同时更新字符串和应用程序。让我们学习自定义解决方案,当用户将改变语言,我们的应用程序将直接更新每个屏幕的新语言。
正如我所说的,通常我们使用 JSON 文件等的本地化。我写了许多 Flutter 项目,所以我过去使本地化为我们的客户,一般来说,我做了一个土耳其和英语版本的产品由我写的。
通常我们像这样定义这些键,然后应用程序用键读取值。
Flutter 有许多本地化选项,特别是我在生产项目中多次使用了 easy_localizaiton。这对我的所有要求都适用,但有一天,客户需要特殊的解决方案。我已经直接要求,
- 你知道我们有一个 location ,你还指望什么?
- 是的,Veli 我们知道这一点,但是我们想要管理本地化文件在我们的 web 服务和客户端可以更改语言到我们的本地化列表响应。
实际上,这个请求并不是什么大问题,因为我们可以使用远程配置、 Firebase 实时配置或者简单的本地化都有自定义的后端解决方案,但是