Flutter App名称跟随手机语言改变而改变

发布于:2024-09-19 ⋅ 阅读:(28) ⋅ 点赞:(0)

Android

1.修改android/app/src/main/AndroidManifest.xml中的android:lable的值为@string/app_name

 

2.在android/app/src/main/res/values/styles.xml文件中添加App的名称,如果没有这个文件请自行添加。

这里说明一下,如果没有手机语言对应的App名称,则展示这里设置的名称

<string name="app_name">Pet Health Care</string>

3.在android/app/src/main/res/values创建values-xx文件夹,这里的xx是所需语言的ISO 639-1 对应的值,比如说 values-zh、values-en。然后再文件夹中创建名称为strings.xml文件,并在文件中放入对应的应用名称

values-zh/strings.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <string name="app_name">宠物健康</string>

</resources>

values-en/strings.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <string name="app_name">Pet Health Care</string>

</resources>

重新编译运行就可以了

iOS

1.如下图所示,点击左侧导航栏中的文件夹图标——>点击Runner——>点击PROJECT中的Runner——>点击Info——>点击Localizations下的+号图标——>选择要添加的语言——>点击Finish按钮

2.点击File——>New——>File...——>选择Strings File文件类

3.文件名称设置成InfoPlist.strings,Group设置为Runner下的Runner文件夹

4.点击刚创建的InfoPlist.strings文件,在文件夹中添加应用名称

CFBundleDisplayName = "Pet Health Care";

5.点击右侧的文件图标按钮,再点击Localize——>选择语言

6.此时Localization中就出现了我们第一步中新增的语言列表,勾选上你要做的多语言列表,此时左侧的InfoPlist.strings文件就可以展开了。修改对应文件下的App名称

7.右击左侧的Info文件,选择打开方式为source code,将CFBundleDisplayName的值设置为$(PRODUCT_NAME)

<key>CFBundleDisplayName</key>

<string>$(PRODUCT_NAME)</string>

重新运行即可,切换手机语言观察App名称会随之变化