ReactNative0.59版本安卓Realese包无法连网问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ReactNative0.59版本安卓Realese包无法连网问题相关的知识,希望对你有一定的参考价值。

参考技术A android 9 的操作系统,原来在 Android 8 进一步加强系统安全权限的基础上, Android 又限制了明文流量的网络请求,非加密的流量请求都会被系统禁止掉,目前网络访问基本都从原来的 http 替换为了 https 也是加强安全性的一种表现。既然知道原因了,那就有相对应的解决方案。

后两点不再赘述,说说第一点是怎么声明配置的吧。

1、在 android/app/src/main/res 目录下新建一个 xml 目录,在 xml 目录中新建 network_security_config.xml 文件 ,编辑文件内容如下:

2、在 android/app/src/main/ 目录下的 AndroidManifest.xml 文件中 application 标签内声明文件,如下:

参考: https://blog.csdn.net/kris1122/article/details/89239647

React Native - console.error: 'React Native 版本不匹配

【中文标题】React Native - console.error: \'React Native 版本不匹配【英文标题】:React Native - console.error: 'React Native version mismatchReact Native - console.error: 'React Native 版本不匹配 【发布时间】:2019-01-14 12:18:59 【问题描述】:

我正在使用 EXPO 和 React Native,应用程序运行完全正常,直到我创建一个新文件时它突然停止,即使我删除它,错误仍然存​​在。

我已将 React Native 更新到 V0.56.0,但仍然显示错误:

console.error: 'React Native 版本不匹配。

Javascript 版本:0.56.0 原生版本:0.52.0

在我更新之前是:

Javascript 版本:0.54.0 原生版本:0.52.0

仍然导致同样的错误?

关于如何解决此问题以及使用哪个命令更新本机版本的任何想法?

【问题讨论】:

[这对我有用](***.com/questions/47763824/…) 第一个答案对我有用 【参考方案1】:

转到项目文件夹中的package.json 文件

在哪里可以找到这样的代码

"dependencies": 
    .....
    "react-native": "^0.54.0",
    ......
,

react-native 版本更改为0.54 并保存文件。

然后转到终端并重定向到您的项目文件夹并点击命令

npm install  && expo start -c

【讨论】:

【参考方案2】:

此答案于 2020 年发布,并于 2021 年更新, 通过 3 个步骤修复此错误:

第一步:我根据expo文档将package.json文件中expo的值更改为支持的最新版本(访问here)。

第二步:我将app.json文件中sdkVersion的值改为package.jsonexpo的值。(与上一步相同)。

第三步:根据博览会文件,我将package.json文件中react-native的值更改为React Native Version的相同值(访问here)。

现在你准备好了。

使用npm install安装指定版本的依赖,然后npm start运行项目

【讨论】:

拯救了我的夜晚!【参考方案3】:

我用过类似的东西

$ sudo npm install babel-upgrade -g
$ react-native-git-upgrade
$ npx babel-upgrade --write
$ sudo npm install babel-upgrade -g
$ npx babel-upgrade --write --install
$ react-native-git-upgrade
$ watchman watch-del-all
$ rm -rf node_modules
$ rm -rf $TMPDIR/react-*
$ rm -rf ios/Pods
$ cd ios
$ pod cache clean --all
$ pod repo update && pod install
$ cd ..
$ npm install
$ ./android/gradlew clean -p ./android/
$ rm -rf ios/build
$ react-native run-ios
$ react-native run-android
$ cd ios/
$ pod update yoga
$ pod update React/RCTNetwork
$ pod repo update
$ pod update
$ cd ..
$ pod update
$ cd ..
$ react-native run-ios

【讨论】:

【参考方案4】:

Javascript 是安装的本机版本的一个版本,

所以,我将 sdk 版本更改为仅落后 1 在我的 package.json 中更改了这一行 "react-native": "https://github.com/expo/react-native/archive/sdk-38.0.0.tar.gz",

到 "react-native": "https://github.com/expo/react-native/archive/sdk-37.0.0.tar.gz",

并保存文件,应用程序开始工作(甚至没有重新启动应用程序)

【讨论】:

以上是关于ReactNative0.59版本安卓Realese包无法连网问题的主要内容,如果未能解决你的问题,请参考以下文章

Apple 在升级到 React Native 0.59 后拒绝了二进制文件(2.3.1 - 性能)

React Native - 缓存图像

在 CakePHP 2.x ORM + 中使用函数 MySQL 和 NameClass 模型删除 ;(

在 React Native 0.59 上将目标 sdk 升级到 29

react-native:无法使用发布模式访问Android权限

将套接字传递给组件