是否有办法更改Flutter项目的Package Name ?
我想在flutter项目中更改包名和应用名。
是否有办法更改Flutter项目的Package Name ?
我想在flutter项目中更改包名和应用名。
当前回答
Android应用名称
修改AndroidManifest.xml文件中的标签名称:
<application
android:name="io.flutter.app.FlutterApplication"
android:label="TheNameOfYourApp"
软件包名称
修改AndroidManifest.xml文件中的包名(其中3个文件夹:main, debug和profile,根据你想部署的环境):
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.package.name">
在你的构建中也是如此。应用程序文件夹内的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
To:
android\app\src\main\java\your\package\name
编辑:12月18日
对于包名,只需在build build中更改即可。它只
defaultConfig {
applicationId "your.package.name"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
为iOS
从你的信息中更改包标识符。plist文件在你的ios/Runner目录。
<key>CFBundleIdentifier</key>
<string>com.your.packagename</string>
更新
为了避免重命名包和包标识符,你可以在终端中使用以下命令启动你的项目:
flutter create --org com.yourdomain appname
其他回答
如果你不喜欢以这种方式改变文件,那么另一种方式是使用这个包。
https://pub.dev/packages/rename
rename --bundleId com.newpackage.appname
pub global run rename --appname "Your New App Name"
使用这个,你只需要在你的终端上运行这两个命令,你的应用名称和标识符就会被改变。酒吧全球运营
更改pubspec中的name属性。Yaml(第一行)
对于apk的名称,修改AndroidManifest.xml中的android:label
简单的方法,在编辑器中搜索例如vs CODE your.package.name例如com.example.application通过所有文件。
3个AndroidManifest文件(profile, debug, main) 1 build.gradle 1 java 或者kt文件
这些会弹出
替换所有这些,瞧。如果你已经构建了你的项目,build目录中会弹出许多文件,你可以忽略这些文件,不需要更改它们
根据官方的flutter文档,您只需要在app/build中更改ApplicationId。gradle目录。然后你只需要构建你的apk, manifest文件的包名将根据你在build.gradle中更改的ApplicationId进行更改。由于在构建apk和谷歌播放时的颤扑,都考虑从build.gradle中的ApplicationId。这个解决方案对我很有效。
来源:官方文件
我认为这不是解决这个问题的正确办法。但是您可以用您想要的包名创建一个新项目,然后从现有项目中将所有源文件复制到新项目中。
**注意:你也必须复制pubspec的所有内容。在firebase和其他api的情况下,这个解决方案可能有点冗长。