如何在React native 0.70及以上版本中更改android包名称

ukqbszuj  于 2022-12-14  发布在  React
关注(0)|答案(1)|浏览(153)

我在最近的项目中遇到了这个问题,我使用的是react native 0.70,我需要更改android包名,我找到的所有解决方案都在以前的版本中,但在React native 0.70中结构发生了一些变化,所以我收到了错误
我尝试了许多解决方案,其中提供了许多他们告诉改变这些文件

  • 安卓/应用程序/源代码/主/java/您的应用程序/MainActivity.java
  • 安卓/应用程序/源代码/主/java/您的应用程序/MainApplication.java
  • android/app/src/main/AndroidManifest.xml
  • 安卓/应用程序/构建.gradle
  • 安卓/应用程序/巴克:
8hhllhi2

8hhllhi21#

我找到了解决方案,并在这里分享,如果任何人都经历过同样的事情,可以从这里得到帮助。由于在react native 0. 70中结构发生了一些变化,我们还需要在一些额外的文件中进行更改。因此,这些是我们需要进行的更改,我使用了newApp,但您必须在此处使用您的包名
在以下位置:安卓/应用程序/源代码/主/java/您的应用程序/MainActivity.java:

package com.newApp

在以下位置:安卓/应用程序/源代码/主/java/您的应用程序/MainApplication.java:

package com.newApp

在:Android/应用程序/源代码/主/Android清单.xml中:

package="com.newApp"

在:android/应用程序/构建版本中。等级:

applicationId "com.newApp"

在:**安卓/应用程序/_BUCK:**中

android_build_config(
 package="com.newApp"
)
android_resource(
package="com.newApp"
)

在:android/应用程序/源代码/主/jni/主应用程序涡轮模块管理器委托.h

static constexpr auto kJavaDescriptor =
  "Lcom/newApp/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate;";

在:android/应用程序/源代码/主/jni/主组件注册表.h

constexpr static auto kJavaDescriptor =
  "Lcom/yournewpackagename/newarchitecture/components/MainComponentsRegistry;";

在以下位置:**android/app/src/main/java/yourApp/newarchitecture/MainApplicationReactNativeHost.java:**在这4行中进行更改

package com.newApp.newarchitecture;
import com.newApp.BuildConfig;
import com.newApp.newarchitecture.components.MainComponentsRegistry;
import com.newApp.newarchitecture.modules.MainApplicationTurboModuleManagerDelegate;

在以下位置:安卓/应用程序/源代码/主/java/您的应用程序/新架构/组件/MainComponentsRegistry.java:

package com.newApp.newarchitecture.components;

在:android/应用程序/源代码/主/java/您的应用程序/新架构/模块/MainApplicationTurboModuleManagerDelegate.java:

package com.newApp.newarchitecture.modules;

在这些步骤之后,只需在项目终端中键入以下内容即可清理项目

cd android
./gradlew clean

现在只要返回并运行您的项目,这将是一个很好的方法,使用android工作室运行它的第一次

相关问题