升级前编译能成功,升级后发现编译不过了,可能是编译的缓存问题,因为安装了最新的包,编译的时候确是把旧的包拿来编译,所以需要清除build缓存。
# 删除以下文件夹
# Xcode缓存
~/Library/Developer/Xcode/DerivedData
# RN项目中的编译缓存(RN项目中)
ios/build
报错的原因是build.gradle
中指定了用哪个版本的android sdk
和build tools
来编译项目,但是目前android sdk指定的版本未安装,然后自动安装也失败了,因为licences未被接受,所以就手动安装指定版本的android sdk和build tools吧。
先在build.gradle
中查看需要安装哪个版本,然后在Android studio
中的Preferences -> System setting -> Android SDK
中的SDK Platforms
和SDK tools
两栏下载对应的版本就行了。
应该是debug的签名文件找不到,如果只是在模拟器中调试的话,注释掉就好了。
注释build.gradle
文件中的signingConfigs
中的内容。
在app.js
中加入如下代码
const _XHR = GLOBAL.originalXMLHttpRequest ?
GLOBAL.originalXMLHttpRequest :
GLOBAL.XMLHttpRequest
XMLHttpRequest = _XHR;
这时RN发的网络请求chrome可以接受到了,但会存在跨域问题,发的请求都是options的,然后去除chrome的跨域限制,自己网上搜搜,关键词是disable-web-security
。
open -a "Google Chrome" --args --disable-web-security --user-data-dir
shift+command+k