react-native之Androidstudio安装问题总结

1.出现undefined is not an object evaluating ReactInternals.ReactCurrentOwner问题

出现此问题,首先查看使用的 React Native 是否为0.45以上版本,如果是请把react更新到16.0.0-alpha.12,执行命令:

yarn add react@16.0.0-alpha.12或者npm add react@16.0.0-alpha.12(根据自己的管理器来定使用yarn还是npm)

2.Could not get BatchedBridge

出现此问题原因为node 服务没有开启或者tcp端口被占用,采用以下命令解决:

react-native start 或者 npm start

adb reverse tcp:8081 tcp:8081

3.Error:Conflict with dependency ‘com.google.code.findbugs:jsr305’ in project ‘:app’. Resolved versions for app (3.0.0) and test app (2.0.1) differ. See http://g.co/androidstudio/app-test-app-conflict for details.

在app的gradle中添加如下代码:

android {
    configurations.all {
        resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
    }
}

4.java.lang.UnsatisfiedLinkError: could find DSO to load:

第一,在项目根目录下的gradle.properties文件最后加上这样一句:

android.useDeprecatedNdk=true

第二、在app module下的build.gradle文件中添加如下内容:

android {
    ...
    defaultConfig {
        ...
        ndk{
            abiFilters "armeabi-v7a", "x86"
        }
        ...
    }
...
}

第三、找出不兼容的64位so文件并禁止它们
在目录…\ReactNativeWithNativeApp\app\build\outputs\apk下找到app-debug.apk,并把它解压,查看一下,解压后的文件的lib目录下有没有这个目录:
arm64-v8a
如果有这个目录,看看里面的so文件,都是我们要禁止的,禁止的方法如下:假设里面有一个 1.so文件,我们要在app module下的build.gradle文件中做如下修改:

android {
    ...
    defaultConfig {
        ...
        ndk{
            abiFilters "armeabi-v7a", "x86"
        }
        packagingOptions {
            exclude "lib/arm64-v8a/1.so"            
        }
        ...
    }
...
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值