首页 文章

在react-native应用程序中更改包名称

提问于
浏览
5

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

React-native不允许您在init中将其指定为包名称,或者在init之后更改它 .

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

不起作用

Change package name for Android in React Native中所述更改包名称也不起作用,并在react-native run-android上导致以下错误

无法完成会话:INSTALL_FAILED_VERSION_DOWNGRADE

4 回答

  • 6

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

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

    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
    

    good practice is also to modify BUCK file 在Android项目中,在两个地方,并相应调整android项目中的层次结构,虽然没有必要:

    BUCK 文件:

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

    运行命令 ./gradlew clean

  • 0

    根据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
    

    To change iOS version package name, use Xcode

  • 0

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

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

  • 10

    我使用 react-native-rename npm包 .

    安装使用

    npm install react-native-rename -g
    

    然后从React Native项目的根目录执行以下操作

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

    react-native-rename on npm

相关问题