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

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


当前回答

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

其他回答

安卓

在Android中,包名在AndroidManifest中:

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

iOS

在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:

Mac: Command + Shift + F Linux/Windows: Ctrl + Shift + F


感谢diegoveloper在iOS方面的帮助。

更新:

在回到这个页面几次之后,我认为用正确的名称开始一个新项目,然后复制旧文件会更容易、更干净。

如果你正在使用VS Code,你可以替换你所有的com。示例到您的包名称

要这样做,CTRL+SHIFT+H 设置单词替换com.example 将单词replace替换为[your package] 然后替换所有

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

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

若要在flutter中更改包名,必须对所有平台执行此操作。

为了使它更容易,我建议您使用重命名包。

只需在flutter项目根目录中运行此命令。

pub global run rename --bundleId com.onat.networkApp

这里,com.onat.networkApp是包名

要瞄准特定的平台,请使用“-t”选项。 例句:

pub global run rename --bundleId com.example.android.app -t android

您可以在这里了解有关重命名包的更多信息

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