是否有办法更改Flutter项目的Package Name ?

我想在flutter项目中更改包名和应用名。


当前回答

手动更改名称似乎不起作用,抛出gradle错误,在我的情况下,它确实抛出错误。

所以我通常会创建一个新的颤振项目

我使用下面提到的命令创建一个新的扑动应用程序

flutter create --org com.yourdomain appname

您的项目的包名将是-> com.yourdomain.appname


如果你只是想保持你的包名称为com。然后对Appname进行如下更改

flutter create --org com appname

为android添加Java而不是kotlin添加-a Java

flutter create -a java --org com.yourdomain appname

EDIT


如果您已经创建了一个项目,您可以使用change_app_package_name包来更改包的名称。

flutter pub run change_app_package_name:main com.package.appname

其他回答

尽可能简单地使用这个change_app_package_name包首先添加依赖

 dev_dependencies: 
  change_app_package_name: lates version

然后执行这个命令

flutter pub run change_app_package_name:main com.new.package.name

最快和最干净的方法来改变你的包名!

警告:

如果你已经编辑了android/, ios/和windows/文件夹的内容,你需要确保在继续之前在某个地方备份了这些更改。

1. 删除颤振项目根目录下的文件夹:

android / ios / windows / 构建/

假设你想把com.oldcompany.oldproject重命名为com.newcompany.newproject。

2. 从项目的根目录启动以下命令:

flutter create --org com.newcompany --project-name newproject .

PS:为了确保一切都正确设置,您可以通过运行以下命令在文件中搜索您的包名称

grep --color -r com.oldcompany.oldproject *
grep --color -r com.newcompany.newproject *

在尝试了以上所有方法之后。简单的工作为我重命名包颤振与 Android工作室:

步骤1:

Mac: Command + Shift + R

Linux/Windows: Ctrl + Shift + R

更改为新包后,按“全部替换”并等待Android Studio运行完成。

步骤2:

接下来,转到AndroidManifest.xml:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.package.name">

复制包名,并执行相同的步骤1重命名AndroidManifest和build.gradle中的包。

最后,更改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 {

修改目录名称。 详情见以下链接this:

来自:

android app \ src \ \ \ com java操作符玩

To:

android app玩src \ \ java new_package \ \你的名字

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

Android和Ios的默认路径更改的权利。

为安卓

AndroidManifest.xml开放,

走这条路。

/ src /游戏/应用AndroidManifest . xml

选择软件包名称,然后右键单击,

点击重命名后,重命名弹出(对话框)显示。

在这里输入新的包名,

更改名称文本后,单击重构按钮。

__________________________________________________________________________

为Ios

从抽屉中选择ios文件夹,右键点击这些文件夹,

选择,并双击运行在抽屉,然后选择一般

然后,改变你的包标识符(包名)。 更改包标识符(包名)后,您的包名为 为Ios更改。