繁体   English   中英

在本机应用程序中更改包名称

[英]Changing the package name in a react-native app

我已经用 react-native 创建了一个应用程序。 我需要包名称为:com.org.appname

React-native 不允许你在 init 中指定这个作为包名,或者在 init 之后改变它。

react-native init --package="com.org.appname" 

不起作用

按照在 React Native更改 Android的包名称中所述更改包名称也不起作用,并导致在 react-native run-android 上出现以下错误

无法完成会话:INSTALL_FAILED_VERSION_DOWNGRADE

在 iOS 项目中,您只需要使用 Xcode 更改BundleID

在 Android 项目中,您需要更改 4 个文件中的名称:

android/app/src/main/java/com/reactNativeSampleApp/MainActivity.java
android/app/src/main/java/com/reactNativeSampleApp/MainApplication.java
android/app/src/main/AndroidManifest.xml
android/app/build.gradle

好的做法也是修改Android项目中的BUCK文件,在两个地方,并相应地调整Android项目中的层次结构,虽然不是必须的:

降压文件:

 android_build_config(
     name = "build_config",
     package = "app.new.name",
 )

 android_resource(
     name = "res",
     package = "app.new.name",
     res = "src/main/res",
 )

运行命令./gradlew clean

根据这个https://saumya.github.io/ray/articles/72/ ,你可以从一开始就运行这个命令

react-native init MyAwesomeProject -package "com.example.app"

但是,如果您已经通过以下方式生成了您的应用程序

react-native init MyAwesomeProject

您可以在文件中修改应用程序名称

android/app/src/main/res/values/strings.xml

然后你可以在文件中修改包名

android/app/src/main/java/com/reactNativeSampleApp/MainActivity.java
android/app/src/main/java/com/reactNativeSampleApp/MainApplication.java
android/app/src/main/AndroidManifest.xml ( optional as per my experience )
android/app/build.gradle

最后,运行以下命令(从应用程序的 android/ 目录中)

./gradlew clean
./gradlew assembleRelease

要更改 iOS 版本包名称,请使用 Xcode

我使用react-native-rename npm 包。

安装使用

npm install react-native-rename -g

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

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

npm 上的 react-native-rename

如果您的文本编辑器能够替换所有项目文件中的字符串,则更改包 ID 非常容易。

我正在使用 PhpStorm,我只是在我的所有项目文件中用 new.package.id 替换了我的 old.package.id 。 它对我有用

只需在这 4 个文件中更改您的包名称

android => app => src => main => java => com => reactNativeSampleApp => MainActivity.java & MainApplication.java android => app => src => main => AndroidManifest.xml android => app => build .gradle

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM