我曾经react-native init MyApp
初始化一个新的React Native应用程序.这创建了包含该项目的Android项目com.myapp
.
更改此包名称的最佳方法是什么,例如:com.mycompany.myapp
?
我尝试更改它AndroidManifest.xml
但它创建了其他错误,所以我假设它不是那样的.
任何的想法?
我知道关于这个问题有很多问题/答案。然而,我在过去的几天里尝试了一些我在 SO 上找到的解决方案,但到目前为止还没有一个有效。
我的错误:
BUILD SUCCESSFUL in 52s
372 actionable tasks: 352 executed, 20 up-to-date
info Running C:\Users\User\AppData\Local\Android\Sdk/platform-tools/adb -s emulator-5554 reverse tcp:8081 tcp:8081
info Starting the app on emulator-5554 (C:\Users\User\AppData\Local\Android\Sdk/platform-tools/adb -s emulator-5554 shell am start -n mypackage/mypackage.MainActivity)...
Starting: Intent { cmp=mypackage/.MainActivity }
Error type 3
Error: Activity class {mypackage/mypackage.MainActivity} does not exist.
Run Code Online (Sandbox Code Playgroud)
以下是我根据其他 SO 帖子尝试做的所有事情的列表:
尝试
运行adb kill-server
, adb start-server
, 那么react-native run-android
运行adb reverse tcp:8081 tcp:8081
,然后react-native run-android
(我曾经合作过的一位高级开发人员很久以前就告诉我这个问题可能与此有关,但我无法联系到他)
从模拟器以及我的物理设备卸载应用程序
Build -> Clean Project …
我想在productFlavors
我的Android App中使用2 :live
和staging
.
在app/build.grandle
我定义他们是这样的:
defaultConfig {
applicationId "com.some.id"
minSdkVersion 16
targetSdkVersion 22
versionCode 1
versionName "1.0"
ndk {
abiFilters "armeabi-v7a", "x86"
}
}
splits {...}
buildTypes {
release {
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
debug {
debuggable true
minifyEnabled false
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
productFlavors {
live {
applicationId "com.some.id"
}
staging {
applicationId "com.some.id.staging"
}
}
}
Run Code Online (Sandbox Code Playgroud)
现在,当我运行react-native run-android --variant=liveDebug
一切正常,但当我尝试运行时,react-native run-android --variant=stagingDebug
我得到错误:
Installed on 1 device. …
Run Code Online (Sandbox Code Playgroud) gradle react-native android-build-flavors react-native-android