嵌入原生遇到的坑
1.
undefined is not an object(ecaluating 'ReactInternals.ReactCurrentOwner')
原因:好像是什么当前版本不存在啥的
解决方法:在根目录下 进入控制台 输入yarn add react@16.0.0-alpha.12
Android studio 报错 tools:overrideLibrary="com.facebook.react"
原因:这个是RN 版本 支持最小 miniSDKVersion = 16 ,我们目前最小指向miniSDKVersion = 15;
解决方法:在Android 目录下的清单文件中添加如下(在Application 标签上) tools:overrideLibrary="com.facebook.react"
3.
java.lang.UnsatisfiedLinkError: dlopen failed: "xxx/libgnustl_shared.so" is 32-bit instead of 64-bit
解决方案
1.在项目的根目录的 gradle.properties里面添加一行代码
android.useDeprecatedNdk=true.
2.在project的root目录下的build.gradle中添加如下代码。
defaultConfig {
···
ndk{
abiFilters "armeabi-v7a","x86"
}
packagingOptions {
exclude "lib/arm64-v8a/librealm-jni.so"
}
}
not fond assert 意思就是找不到资源文件
解决方案:
1. create an assets folder under android/app/src/main
2. curl "http://localhost:8081/index.android.bundle?platform=android" -o "android/app/src/main/assets/index.android.bundle"
## Thanks: