Android Studio 为什么Flutter intl插件即使提供了正确的模板也会生成错误的文件?

zengzsys  于 2023-10-23  发布在  Android
关注(0)|答案(1)|浏览(165)

遵循Internationalizing Flutter apps的教程才发现,一旦Android Studio(长颈鹿|2022.3.1 Patch1)的Flutter Int插件已初始化,它将在l10n文件夹中继续生成相同的文件intl_en.arb,即使l10n.yaml文件具有不同的模板。
l10n文件夹最终看起来像这样(注意不需要的intl_en.arb文件):

l10.yaml的内容是:

arb-dir: lib/l10n
template-arb-file: app_en.arb
output-localization-file: app_localizations.dart

我找到的唯一解决方案是转到pubspec.yaml文件并禁用 flutter_intl 选项,如下所示:

flutter_intl:
  enabled: false

但在此之后,我必须重新生成翻译,每次我在.arb文件中做更改下一个命令:

flutter gen-l10n

现在还可以,但我想知道问题从何而来?

mkshixfv

mkshixfv1#

我可以通过在pubspec.yaml中停用flutter_intl来解决这个问题。

flutter_intl:
    enabled: false

然后将所有arb文件重命名为intl_en.arb,并在l10n.yaml中将模板文件的名称设置为intl_en.arb

template-arb-file: intl_en.arb

最后,再次激活flutter_intl

flutter_intl:
    enabled: true

相关问题