我已经使用 Flutter create testapp 创建了该应用程序。现在,我想将应用名称从“testapp”更改为“My Trips Tracker”。我怎样才能做到这一点?
我尝试从 AndroidManifest.xml
进行更改,但它已更改,但 Flutter 提供了一种方法来做到这一点吗?
安卓
打开 AndroidManifest.xml
(位于 android/app/src/main
)
<application
android:label="App Name" ...> // Your app name here
iOS
打开 info.plist
(位于 ios/Runner
)
<key>CFBundleName</key>
<string>App Name</string> // Your app name here
别忘了跑
flutter clean
flutter pub get
更新:从评论来看,这个答案似乎已经过时了
Flutter 文档指出了您可以在哪里更改 Android 和 iOS 应用程序的显示名称。这可能是您正在寻找的:
准备要发布的 Android 应用程序
准备发布 iOS 应用
安卓版
您似乎已经在 AndroidManifest.xml
中作为 application
条目找到了它。
查看位于 /android/app/src/main/ 中的默认 App Manifest 文件 AndroidManifest.xml 并验证值是否正确,尤其是: 应用程序:编辑应用程序标签中的 android:label 以反映应用程序的最终名称。
对于 iOS
请参阅 Review Xcode project settings
部分:
导航到 Xcode 中的目标设置:在 Xcode 中,打开应用程序 ios 文件夹中的 Runner.xcworkspace。
要查看应用程序的设置,请在 Xcode 项目导航器中选择 Runner 项目。然后,在主视图侧边栏中,选择 Runner 目标。
选择常规选项卡。接下来,您将验证最重要的设置: 显示名称:要在主屏幕和其他地方显示的应用程序的名称。
有一个名为 flutter_launcher_name 的插件。
编写文件 pubspec.yaml:
dev_dependencies:
flutter_launcher_name: "^0.0.1"
flutter_launcher_name:
name: "yourNewAppLauncherName"
并运行:
flutter pub get
flutter pub run flutter_launcher_name:main
您可以获得与编辑 AndroidManifest.xml
和 Info.plist
相同的结果。
flutter pub run flutter_launcher_name:main
您可以在 iOS 中更改它,而无需打开 Xcode,方法是将 project/ios/Runner/info.plist <key>CFBundleDisplayName</key>
编辑为您想要的字符串作为您的名称。
FWIW - 我对在 Xcode 和 Flutter 中进行更改感到沮丧,所以我在打开 Xcode 之前开始提交所有更改,这样我就可以看到更改在 Flutter 项目中的位置。
查看位于
将 android:label 编辑为所需的显示名称
有几种可能性:
1-使用包:
我建议您使用 flutter_launcher_name,因为命令行工具可以简化更新 Flutter 应用程序启动器名称的任务。
用法:
将 Flutter Launcher 名称配置添加到 pubspec.yaml 文件中:
dev_dependencies:
flutter_launcher_name: "^0.0.1"
flutter_launcher_name:
name: "yourNewAppLauncherName"
设置好配置后,剩下要做的就是运行包。
flutter pub get
flutter pub run flutter_launcher_name:main
如果你使用这个包,你不需要修改文件 AndroidManifest.xml 或 Info.plist。
2- 编辑 Android 的 AndroidManifest.xml 和 iOS 的 info.plist
对于 Android,编辑文件夹中 AndroidManifest.xml 文件中 application 标记中的 only android:label
值: android/app/src/main
代码:
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application
android:name="io.flutter.app.FlutterApplication"
android:label="Your Application Name" //here
android:icon="@mipmap/ic_launcher">
<activity>
<!-- -->
</activity>
</application>
</manifest>
截屏:
https://i.stack.imgur.com/FD9bD.png
对于 iOS,仅编辑文件夹 {1 中的文件 Info.plist 中 String 标记内的值} 。
代码:
<plist version="1.0">
<dict>
<key>CFBundleName</key>
<string>Your Application Name </string> //here
</dict>
</plist>
截屏:
https://i.stack.imgur.com/e6hpu.png
如果您遇到问题,请执行 flutter clean
并重新启动您的应用程序。
您可以通过编辑文件 *project/ios/Runner/info.plist 在 iOS 中更改它而无需打开 Xcode。将 <key>CFBundleDisplayName</key>
设置为您希望用作姓名的字符串。
对于 Android,请从 Android 文件夹中的 AndroidManifest.xml 文件 android/app/src/main 中更改应用名称。让 android 标签引用您喜欢的名称,例如,
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
<application
android:label="test"
// The rest of the code
</application>
</manifest>
application
不应该在 android:label="test"
之后关闭吗?还是所有“其余代码”(XML)属性?
这里的一些答案建议使用包 flutter_launcher_name
,但是这个包不再被维护,并且会导致新的 Flutter 2.0 项目中的依赖问题。
插件 flutter_app_name
(https://pub.dev/packages/flutter_app_name) 是一个几乎相同的包,具有良好的 null 安全性,可与 Flutter 2.0 一起使用。
设置您的开发依赖项和您的应用程序的名称
dev_dependencies:
flutter_app_name: ^0.1.1
flutter_app_name:
name: "My Cool App"
在项目目录中运行 flutter_app_name
flutter pub get
flutter pub run flutter_app_name
您的启动器现在将具有“My Cool App”的名称。
您可以通过更新 Android 和 iOS 的名称来更改应用程序名称
安卓版
只需打开 AndroidManifest.xml 文件,
进入 android>app>src>main>AndroidManifest.xml
https://i.stack.imgur.com/TAwXW.jpg
所以我的应用程序名称是“演示”所以,我将更新标签值。
与 iOS 相同,只需通过以下方式打开 Info.plist 文件,
进入 ios>Runner>Info.plist
https://i.stack.imgur.com/45gB5.jpg
并更改此字符串值。
一个问题是,在 iOS 设置 (iOS 12.x) 中,如果您更改显示名称,它会将 iOS 设置中的应用名称和图标保留为旧版本。
对于 Android,更改 Android 文件夹中的应用名称。在 AndroidManifest.xml 文件中,在文件夹 android/app/src/main
中,让 android
标签引用您喜欢的名称,例如,
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
<application
`android:label="myappname"`
// The rest of the code
</application>
</manifest>
自 2019 年 12 月 21 日起,您需要在文件 pubspec.yaml 中更改名称 [NameOfYourApp]。然后转到菜单编辑→查找→替换路径,并替换所有出现的你以前的名字。
此外,为了更好地衡量,更改您的 android 目录中的文件夹名称,例如 android/app/src/main/java/com/example/yourappname。
然后在控制台中,在应用程序的根目录中,运行
flutter clean
首先重命名您的 AndroidManifest.xml 文件
android:label="Your App Name"
第二在 Pubspec.yaml 文件中重命名您的应用程序名称 name: Your Application Name
第三次更改您的应用程序徽标
flutter_icons:
android: "launcher_icon"
ios: true
image_path: "assets/path/your Application logo.formate"
第四轮
flutter pub pub run flutter_launcher_icons:main
嗨,我确实看到了手动解决方案(转到 IOS 和 Android)。但我发现了一个插件,它可以从一个位置更改名称:
https://pub.dev/packages/flutter_launcher_name
只需执行以下操作:添加到 pubspec.yaml
dev_dependencies:
flutter_launcher_name: "^0.0.1"
flutter_launcher_name:
name: "yourNewAppLauncherName"
在终端中运行:
flutter pub get
flutter pub run flutter_launcher_name:main
完毕。
您可以使用 rename 包轻松完成此操作,它可以帮助您针对不同平台更改 Flutter 项目的 AppName 和 BundleId,目前可用于 IOS、Android、macOS 和 Web
要安装软件包,请运行以下命令:
pub global activate rename
要重命名应用程序,请使用以下命令:
pub global run rename --appname "Your App Name"
而已!
您可以查看软件包的 documentation 以了解完整的详细信息,因为它具有一些不错的功能来选择目标平台等等。
文档中明确提到了iOS和Android的改名方式,如下:
构建和发布 Android 应用
构建和发布 iOS 应用
但是,在 iOS 的情况下,您将 Display Name 从 Xcode 更改后,您无法像 flutter run
那样以 Flutter 方式运行应用程序。
因为 Flutter 运行期望应用名称为 Runner。即使你在 Xcode 中更改名称,它也不起作用。
因此,我将其修复如下:
移动到 Flutter 项目中的位置 ios/Runner.xcodeproj/project.pbxproj,找到并用 Runner 替换新名称的所有实例。
然后一切都应该以 flutter run
的方式工作。
但不要忘记在下次发布时更改名称显示名称。否则,App Store 会拒绝您的姓名。
Manifest merger failed : Attribute application@label value=(OldName) from AndroidManifest.xml:21:9-32 is also present at AndroidManifest.xml:21:9-32 value=(NewName).
。你有什么建议??AndroidManifest.xml
文件,您必须打开位于android/app/src/main
的文件。AndroidManifest.xml
文件(在 Android 中)和info.plist
(在 iOS 中)。 Flutter docs 也提到了它。