我使用React - Native init MyApp初始化一个新的React Native应用程序。 这创建了一个带有com.myapp包的Android项目。

更改这个包名称的最佳方法是什么,例如:com.mycompany.myapp?

我尝试在AndroidManifest.xml中更改它,但它创建了其他错误,所以我假设这不是方法。

任何想法?


当前回答

这里有很多糟糕的答案

如果您想更改包名称,请转到您的构建。应用程序中的Gradle

 defaultConfig {
        applicationId "your.new.package.name" //change this line

然后,当从命令行运行应用程序时,将新的包名作为参数传入

react-native run-android --appId your.new.package.name

没有必要重新命名整个项目

其他回答

init脚本根据你给它的名字为Android生成一个唯一的标识符(例如com。acmeapp for acmeapp)。

你可以通过在android/app/build.gradle中查找applicationId键来查看生成的名称。

如果你需要改变唯一的标识符,现在就做如下所述:

在/android文件夹中,替换所有出现的com。Acmeapp由com.acme.app提供

然后使用如下命令修改目录结构:

mkdir android / app / src / java / com/acme玩

Mv android/app/src/main/java/com/acmeapp android/app/src/main/java/com/acme/app

应用程序标识符中的每个点都需要一个文件夹级别。

来源:https://blog.elao.com/en/dev/from-react-native-init-to-app-stores-real-quick/

转到Android Studio,打开应用程序,右键单击java并选择 新建,然后打包。

给出你想要的名字(例如com.something)。

将文件从另一个包(要重命名)移动到新包。删除旧包。

在编辑器中找到你的项目,使用快捷方式搜索所有文件(在mac上是shift cmd F)。输入旧包的名称。更改对新包名的所有引用。

点击Android Studio,构建,清洁项目,重建项目。

完成了!

快乐编码:)

在VS Code中,按Ctrl + Shift + F,在“Find”中输入旧的包名,在“Replace”中输入新包名。然后按“替换所有事件”。

绝对不是务实的方式。但是,这对我来说很管用。

我会给你提供循序渐进的程序。

首先,我们需要了解为什么我们需要重命名一个包? 主要用于唯一识别应用程序,对吗?React Native是一个跨平台的应用程序,可以在iOS和Android上运行。所以我的建议是在两个平台中需要相同的标识符。Android包名是你应用的唯一标识符,iOS是它的捆绑包ID。

步骤:

首先关闭所有编辑器/studio,例如:xcode android studio vscode,然后在终端上运行命令安装“react-native-rename”包(如果您觉得不安全,请将您的项目文件夹副本保存在另一个文件夹中进行备份):

NPM安装react-native-rename -g

成功安装包后,在终端中打开你的项目文件夹,点击以下命令,其中“your app name Within double quotes”是app名称,< your package name without双/单引号>被替换为package/bundle name/id:

react-native-rename "<你的应用名称包含双引号>" -b <你的包名称不包含双引号或单引号>

例如:react-native-rename "Aptitude Test App" -b com.vaibhavmojidra.aptitudetestapp

注意:确保包/包名/id都是小写的

这还没有完成,现在每个文件都会改变它有包/包的名字,除了一个在ios项目,我们手动需要做的,打开xcode>打开一个项目或文件>选择文件从projectfolder/ios/projectname。Xcodeproj,然后单击打开 单击您的项目名。xcodeproj是项目导航器中的第一个文件,然后在Bundle identifier字段中输入包名/Bundle ID,如下所示:

之后在终端上运行

cd ios

然后运行

正在安装

然后运行

cd . .

现在你完成了ios的所有更改,最后一步是打开Android Studio>打开现有项目>选择projectfolder/ Android文件夹>单击打开 让它加载并完成所有过程,然后在构建菜单中单击“清理项目”,然后在文件菜单中>关闭项目 关闭所有编辑器,现在你可以尝试在ios和android上运行项目的命令,它将以重命名的打包方式运行,同时启动服务器,添加额外的标志——reset-cache:

NPM start -reset-cache

现在就享受吧

我使用react-native-rename* npm包。通过

npm install react-native-rename -g

然后,从你的React Native项目的根目录,执行以下命令:

react-native-rename "MyApp" -b com.mycompany.myapp