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

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


当前回答

简单的方法,在编辑器中搜索例如vs CODE your.package.name例如com.example.application通过所有文件。

3个AndroidManifest文件(profile, debug, main) 1 build.gradle 1 java 或者kt文件

这些会弹出

替换所有这些,瞧。如果你已经构建了你的项目,build目录中会弹出许多文件,你可以忽略这些文件,不需要更改它们

其他回答

关于Visual Studio代码

在“文件”中编辑> Replace

Android工作室

1. 右键单击您的项目>替换路径

2. 写你的旧包和新包>替换全部

这是我如何重命名包为ios和android

Go to build.gradle in app module and rename applicationId "com.company.name" Go to Manifest.xml in app/src/main and rename package="com.company.name" and android:label="App Name" Go to Manifest.xml in app/src/debug and rename package="com.company.name" Go to Manifest.xml in app/src/profile and rename package="com.company.name" Go to app/src/main/kotlin/com/something/something/MainActivity.kt and rename package="com.company.name" Go to app/src/main/kotlin/ and rename each directory so that the structure looks like app/src/main/kotlin/com/company/name/ Go to pubspec.yaml in your project and change name: something to name: name, example :- if package name is com.abc.xyz the name: xyz Go to each dart file in lib folder and rename the imports to the modified name. Open XCode and open the runner file and click on Runner in project explorer. Go to General -> double click on Bundle Identifier -> rename it to com.company.name Go to Info.plist click on Bundle name -> rename it to your App Name. close everything -> go to your flutter project and run this command in terminal flutter clean

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

我认为这不是解决这个问题的正确办法。但是您可以用您想要的包名创建一个新项目,然后从现有项目中将所有源文件复制到新项目中。

**注意:你也必须复制pubspec的所有内容。在firebase和其他api的情况下,这个解决方案可能有点冗长。

我有两个manifest.xml文件在我的应用程序部分,所以我需要改变包的名称