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

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


当前回答

若要在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

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

其他回答

安卓

在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方面的帮助。

更新:

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

根据官方的flutter文档,您只需要在app/build中更改ApplicationId。gradle目录。然后你只需要构建你的apk, manifest文件的包名将根据你在build.gradle中更改的ApplicationId进行更改。由于在构建apk和谷歌播放时的颤扑,都考虑从build.gradle中的ApplicationId。这个解决方案对我很有效。

来源:官方文件

从Android Studio 4.1.3开始,更改包名再简单不过了。

如果您不使用Firebase或任何其他外部服务,只需更改以下文件中的包名称:

在构建中。Gradle (app)文件 在Manifest文件中(主文件、调试文件和概要文件) 包导入在代码文件(Android Studio。将处理更改)

注意:还要更改目录名(在Kotlin或Java下)。

如果您使用Firebase或任何其他外部服务,您也需要更改那里的包名称。

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

警告:

如果你已经编辑了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 *

将更改应用程序包名称添加到您的pubspec。dev_dependencies: section中的Yaml。

dev_dependencies:

change_app_package_name: ^ 1.1.0

更新附件 颤振酒吧得到

使用该命令修改包名。

颤振pub运行change_app_package_name:main com.new.package.name

其中com.new.package.name是你想要的应用程序的新包名,用任何你想要的名称替换它。