Answers:
对于Android应用名称
更改AndroidManifest.xml
文件中的标签名称:
<application
android:name="io.flutter.app.FlutterApplication"
android:label="TheNameOfYourApp"
包裹名称
更改AndroidManifest.xml
文件中的包名称:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.package.name">
同样在build.gradle
应用程序文件夹中的文件中
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
最后,在您的MainActivity.java
类中更改程序包(如果MainActivity.java不可用,请检查MainActivity.kt)
package your.package.name;
import android.os.Bundle;
import io.flutter.app.FlutterActivity;
import io.flutter.plugins.GeneratedPluginRegistrant;
public class MainActivity extends FlutterActivity {
更改目录名称:
从:
android\app\src\main\java\com\example\name
至:
android\app\src\main\java\your\package\name
编辑日期:18-Dec-18
对于包名在建只是改变build.gradle
只
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
对于iOS
从Info.plist
目录内的文件中更改捆绑标识符ios/Runner
。
<key>CFBundleIdentifier</key>
<string>com.your.packagename</string>
更新
为了避免重命名包和包标识符,您可以在终端中使用以下命令启动项目:
flutter create --org com.yourdomain appname
$(PRODUCT_BUNDLE_IDENTIFIER)
。该变量隐藏在哪里?
手动更改名称似乎不起作用,会引发gradle错误,就我而言,它确实会引发错误。
所以我通常创建一个新的flutter项目。
我使用下面提到的命令来创建新的Flutter应用
flutter create --org com.yourdomain appname
您的项目的软件包名称为-> com.yourdomain.appname
如果您只想保留软件包名称,请com.appname
进行如下更改
flutter create --org com appname
中加入Java,而不是kotlin
针对android
加-a java
flutter create -a java --org com.yourdomain appname
在Android中,包名称在AndroidManifest中:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
package="com.example.appname">
在iOS中,包名称是Info.plist中的包标识符:
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
在Runner.xcodeproj / project.pbxproj中可以找到:
PRODUCT_BUNDLE_IDENTIFIER = com.example.appname;
包名称位于多个位置,因此,要更改名称,应在整个项目中搜索旧项目名称的出现并将其全部更改。
Android Studio和VS Code:
感谢diegoveloper为iOS提供的帮助。
回到该页面几次之后,我认为以正确的名称开始一个新项目,然后复制旧文件会更容易,更干净。
对于像我这样不喜欢更改特定文件的人,我使用了https://pub.dev/packages/rename。
安装: pub global activate rename
然后,运行: pub global run rename --bundleId com.example.android.app --target android
这就是我为iOS和android重命名程序包的方式
applicationId "com.company.name"
app/src/main
然后重命名package="com.company.name"
并android:label="App Name"
app/src/debug
并重命名package="com.company.name"
app/src/profile
并重命名package="com.company.name"
app/src/main/kotlin/com/something/something/MainActivity.kt
并重命名package="com.company.name"
app/src/main/kotlin/
并重命名每个目录,以使结构看起来像app/src/main/kotlin/com/company/name/
pubspec.yaml
项目中的,然后更改name: something
为name: name
,例如:-如果程序包名称为com.abc.xyz
的name: xyz
com.company.name
flutter clean
更改Flutter Project的所有AndroidManifest.xml文件-> package =“ your.name.app ”(app / src / debug / AndroidManifest.xml)和(app / src / main / AndroidManifest.xml)和(app / src / profile / AndroidManifest.xml)
好看 !!
已更新您必须在这五个位置将软件包名称更改为所需的软件包名称。
1.) src/profile/AndroidManifest.xml
2.) src/debug/AndroidManifest.xml
3.) src/main/AdroidManifest.xml
4.) build.gradle .
defaultConfig {
applicationId
5.) MainActivity.java on "package"
最后一步是运行 flutter clean
您可以按照Google的以下官方文档进行操作: https //developer.android.com/studio/build/application-id.html
应该在Build.gradle中更改应用程序ID,而可以在AndroidManifest.xml中更改程序包名称。
但是,应谨慎更改软件包名称。
同样,在重新上传应用程序时,请务必小心,因为它会将先前上传的应用程序的应用程序ID与新上传的内容进行匹配。
即使我的答案不会被接受为正确的答案,我只是觉得以上所有这些答案使我遇到了更多问题,这是我如何解决的
结论:解决这个问题只需要一个简单的查找和替换程序,因此我强烈建议您使用Sublime Text 3。