我使用React - Native init MyApp初始化一个新的React Native应用程序。 这创建了一个带有com.myapp包的Android项目。
更改这个包名称的最佳方法是什么,例如:com.mycompany.myapp?
我尝试在AndroidManifest.xml中更改它,但它创建了其他错误,所以我假设这不是方法。
任何想法?
我使用React - Native init MyApp初始化一个新的React Native应用程序。 这创建了一个带有com.myapp包的Android项目。
更改这个包名称的最佳方法是什么,例如:com.mycompany.myapp?
我尝试在AndroidManifest.xml中更改它,但它创建了其他错误,所以我假设这不是方法。
任何想法?
当前回答
重命名所有包名后, 来自android studio。File ->使缓存失效/重新启动可以修复这类错误
这对我很有效
其他回答
反应Native@0.70.x 尝试从com重命名包名。X到com.y.z
我通过以下方法度过了这个痛苦的过程:
将app.json中的displayName更改为z。
{
"name": "<THIS_SHOULD_STAY_SAME>",
"displayName": "<Z>"
}
修改strings.xml中字符串app_name的内容
<resources>
...
<string name="app_name"><Z></string>
...
</resources>
在react-native项目中搜索com。X和替换所有com。X与com.y.z
重要:以防您正在使用外部服务,以及以防如果 你生成了一个文件,把它放在/android下 确保您正在使用的服务仍然正常工作。我建议 您必须使用新的包名生成一个新的配置文件 Com.y.z,然后把它放在完成下面描述的步骤之后。
更新文件夹结构如下:
old: .../android/app/src/main/java/com/x
new: .../android/app/src/main/java/com/y/z
将所有文件移动到…/android/app/src/main/java/com/x到/android/app/src/main/java/com/y/z。 清理。
$ ./gradlew clean
构建。
$ react-native run-android
我使用react-native-rename* npm包。通过
npm install react-native-rename -g
然后,从你的React Native项目的根目录,执行以下命令:
react-native-rename "MyApp" -b com.mycompany.myapp
你可以简单地使用react-native-rename NPM包。
安装使用
NPM安装react-native-rename -g
然后从React Native项目的根目录执行以下命令
MyApp -b com.mycompany
在NPM上React-native-rename
但是注意,这个库删除了MainActivity.java和MainApplication.java。 在更改包名之前,对这两个文件进行备份,并在更改包名后将其放回原处。这个解决办法对我有用
更多信息: react-native-rename
如果你使用VSCode和Windows。
1.按Control + Shift + F。
2.找到您的包名,并用新的包名替换所有的包名。
输入cd android 类型”。/ gradlew干净”
要更改包的名称,您必须在项目中编辑四个文件:
1. android/app/src/main/java/com/reactNativeSampleApp/MainActivity.java
2. android/app/src/main/java/com/reactNativeSampleApp/MainApplication.java
3. android/app/src/main/AndroidManifest.xml
4. android/app/build.gradle
前两个文件的包名如下所示。
package com.WHATEVER_YOUR_PACKAGE_NAME_IS;
将其更改为所需的包名称。
package com.YOUR_DESIRED_PACKAGE_NAME;
您还必须在另外两个文件中编辑包名。
android/app/build.gradle
android/app/src/main/AndroidManifest.xml
注意你是否有谷歌服务。Json文件,那么你还必须改变该文件中的包名。
在这之后,你必须清理你的项目。