我已经使用Flutter create testapp创建了应用程序。 现在,我想将应用程序名称从“testapp”更改为“My Trips Tracker”。我该怎么做呢?
我已经尝试从AndroidManifest.xml进行更改,它已经更改,但是Flutter提供了一种方法来做到这一点吗?
我已经使用Flutter create testapp创建了应用程序。 现在,我想将应用程序名称从“testapp”更改为“My Trips Tracker”。我该怎么做呢?
我已经尝试从AndroidManifest.xml进行更改,它已经更改,但是Flutter提供了一种方法来做到这一点吗?
更新:从评论来看,这个答案似乎已经过时了
Flutter文档指出了可以在Android和iOS上更改应用程序显示名称的位置。这可能就是你想要的:
准备Android应用发行 准备发布iOS应用
为安卓
似乎你已经在AndroidManifest.xml中找到了这个应用程序条目。
查看默认的应用程序清单文件AndroidManifest.xml /android/app/src/main/并验证值是否正确 特别是: 编辑application标签中的android:标签以反映应用程序的最终名称 应用程序。
为iOS
请参阅Review Xcode项目设置部分:
在Xcode中导航到你的目标设置: 在Xcode中,打开Runner。Xcworkspace在应用程序的ios文件夹中。
要查看应用程序的设置,请选择Xcode项目中的Runner项目 导航器。然后,在主视图侧栏中,选择Runner目标。
选择General选项卡。接下来,您将验证最重要的内容 设置: “显示名称”:在主界面显示的应用名称 和其他地方。
你可以在iOS中修改它,而不需要打开Xcode,只需编辑project/ iOS /Runner/info。plist <key>CFBundleDisplayName</key>到你想要作为你的名字的字符串。
FWIW -我在Xcode和Flutter中进行更改时感到沮丧,所以我开始在打开Xcode之前提交所有更改,这样我就可以看到更改在Flutter项目中的位置。
查看默认的应用清单文件AndroidManifest.xml,位于<app dir>/android/app/src/main 编辑android:标签为您想要的显示名称
安卓
打开AndroidManifest.xml(位于android/app/src/main)
<application
android:label="App Name" ...> // Your app name here
iOS
开放的信息。plist(位于ios/Runner)
<key>CFBundleDisplayName</key>
<string>App Name</string> // Your app name here
和/或
不要忘记停止并再次运行应用程序。
对于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>
有一个名为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相同的结果。
自2019年12月21日起,您需要更改pubspec.yaml文件中的名称[NameOfYourApp]。然后转到“路径”中的“编辑→查找→替换”菜单,替换之前出现的所有名字。
另外,为了更好地衡量,更改android目录下的文件夹名称,例如android/app/src/main/java/com/example/yourappname。
然后在控制台中,在应用程序的根目录中运行
flutter clean
iOS和Android版本的名称修改方法在文档中有明确说明:
开发并发布一款Android应用 创建并发布iOS应用
但是,在iOS的情况下,当你从Xcode中更改显示名称后,你不能以Flutter的方式运行应用程序,比如Flutter run。
因为Flutter运行期望应用程序名称为Runner。即使你在Xcode中改变了名字,它也不起作用。
所以,我修改如下:
移动到Flutter项目的位置,ios/Runner.xcodeproj/project。pbxproj,并用Runner查找并替换新名称的所有实例。
然后一切都应该在颤振运行方式工作。
但是不要忘记在下次发布时更改名称显示名称。否则,App Store会拒绝你的名字。
你可以通过编辑文件*project/ iOS /Runner/info.plist在iOS中修改它,而不需要打开Xcode。设置<key>CFBundleDisplayName</key>为你想要作为你的名字的字符串。
对于Android,在AndroidManifest.xml文件中的Android文件夹中更改应用程序名称,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>
有几种可能性:
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和info编辑AndroidManifest.xml。plist for iOS
对于Android,只编辑AndroidManifest.xml文件中应用程序标签中的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>
截图:
对于iOS,只编辑文件信息中的String标签内的值。plist位于ios/Runner文件夹中。
代码:
<plist version="1.0">
<dict>
<key>CFBundleName</key>
<string>Your Application Name </string> //here
</dict>
</plist>
截图:
如果遇到问题,执行扑动清理并重新启动应用程序。
第一个 重命名AndroidManifest.xml文件
android:label="Your App Name"
第二个 在Pubspec中重命名应用程序名称。yaml文件 名称:您的应用程序名称
第三 更改应用程序标志
flutter_icons:
android: "launcher_icon"
ios: true
image_path: "assets/path/your Application logo.formate"
第四 运行
flutter pub pub run flutter_launcher_icons:main
这里的一些答案建议使用包flutter_launcher_name,但是这个包不再被维护,并且会在新的Flutter 2.0项目中导致依赖关系问题。
插件flutter_app_name (https://pub.dev/packages/flutter_app_name)是一个几乎相同的包,具有良好的零安全,可以与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>应用程序>src>main>AndroidManifest.xml
像这样:
所以我的应用程序名称是“demo”,所以,我将更新标签值。
与iOS相同 只要打开信息。Plist文件by,
进入ios>Runner>Info.plist
像这样:
改变这个字符串值。
我确实看到了手动解决方案(转向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
完成了。
它可以帮助您更改您的Flutter项目的AppName和BundleId为不同的平台,目前适用于IOS, Android, macOS和Web
使用实例安装软件包。
pub global activate rename
重命名应用程序,使用以下命令:
pub global run rename --appname "Your App Name"
就是这样!
您可以查看包的文档以获得完整的详细信息,因为它有一些不错的功能,可以选择目标平台等。
如果你发布的是多本地化(语言)。
为Android:
在你的应用程序文件夹 android(浏览器名称)\ \ app \ src \ \ res 添加locale文件夹,例如:
values-ar
瓦卢斯恩
然后在每个文件夹中添加一个新的strings.xml,其中包含该语言的应用程序名称。
对基于“增大化现实”技术
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<string name="app_name">ادارة الديون</string>
</resources>
for和
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<string name="app_name">debt management</string>
</resources>
你能做的最后一件事是到你的AndroidManifest.xml文件 并将android:标签设置为您创建的新文件。
android:label="@string/app_name"
如果你像我一样喜欢从命令行自动化一些东西,你可以使用这个
appName="TestApp"
declare -a androidAppTypes=(
"main"
"debug"
"profile"
)
# Change app name for Android
for appType in ${androidAppTypes[@]}
do
xmlstarlet ed -L -u '/manifest/application/@android:label' -v "$appName" android/app/src/$appType/AndroidManifest.xml
done
# Change app name for Android
plutil -replace CFBundleDisplayName -string "$appName" ios/Runner/Info.plist