相关文章推荐
非常酷的豆腐  ·  創建永續鄉村旅遊與寄宿家庭之商業模式印度當地 ...·  3 月前    · 
帅呆的炒粉  ·  pytorch ...·  3 月前    · 
性感的香蕉  ·  徕卡、蔡司、哈苏,到底谁才是真正的联名手机之王?·  7 月前    · 
暴走的伤疤  ·  巨鹿县公安局_百度百科·  1 年前    · 
大鼻子的海龟  ·  一战中,沙俄可以轻松击败奥匈、奥斯曼,却为何 ...·  1 年前    · 
帅气的领带  ·  排队论_51CTO博客_蛋疼排队论·  1 年前    · 
坚强的小熊猫  ·  john nash诺贝尔获奖感言_头条·  1 年前    · 
小百科  ›  RN调试坑点总结(不定期更新)开发者社区
ios 程序调试 https
气宇轩昂的大海
1 年前
作者头像
啦啦啦321
0 篇文章

RN调试坑点总结(不定期更新)

前往专栏
腾讯云
开发者社区
文档 意见反馈 控制台
首页
学习
活动
专区
工具
TVP
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
社区首页 > 专栏 > 彭湖湾的编程世界 > RN调试坑点总结(不定期更新)

RN调试坑点总结(不定期更新)

作者头像
啦啦啦321
发布 于 2020-06-19 11:32:33
2.3K 0
发布 于 2020-06-19 11:32:33
举报

前言

  • 我感觉,如果模拟器是个人的话,我已经想打死他了
  • 大家不要催我学flutter啦,哈哈哈,学了后跟大家分享下

RN报错的终极解决办法

众所周知,RN经常遇到无可奈何的超级Bug, 那么对于这些问题的终极解决办法是什么呢?

我总结了3点

终极解决方法有三种:

  • 运行npm start — —reset-cache清除缓存,然后再跑
  • 总保持有一个node_modules备份,要是安装模块出问题了就从备份复制一份进项目里
  • 重新启动MAC电脑

(以上操作在多次run,或者删除APP再run后失败的情况下使用)

目录

  • Android真机调试
  • IOS调试篇
  • WebView调试篇

Android真机调试

  • 安装adb,后来可以通过adb devices来检测设备连接成功没有
  • 用USB连接Android手机和电脑, 选择“同意数据传输”
  • 启动Android的USB调试模式 https://zhidao.baidu.com/question/871975720968548932.html
  • 运行react-native run-android

IOS模拟器篇

1.MAC上调试工具React-native-debugger下载缓慢及其解决办法。

我们可以下载React-native-debugger,用于RN项目的 调试

我在下载的时候,遇到两个无语的问题

  • 这玩意儿是没有官网的,你只能从github上下载, 我这里给一个点击就能直接下载的链接 : https://github.com/jhen0409/react-native-debugger/releases/download/v0.10.0/rn-debugger-macos-x64.zip
  • 这个东西大概90M左右, 下载慢不说,而且因为网络原因,经常下载到快完成的时候失败! 加快下载速度的方式如下:
  1. 打开你的 VPN
  2. 打开上面的链接: https://github.com/jhen0409/react-native-debugger/releases/download/v0.10.0/rn-debugger-macos-x64.zip ,很快就能下好

2.调试中,可能偶尔就会出现让人非常无语的红屏问题,报(Could not connect to development server)

比如下面的这个不能连接到 服务器 就是我偶尔或经常遇到的问题,

解决方法:一般刷新几次就好了,如果刷新多次无效,那么重新通过react-native启动项目

(如果IOS模拟器是个人我已经想要打死他了。。。)

3.调试中报错:Missing request token for request

解决方法:反正重启就万完事了。。。不行就再重启

4. 导入新的图片image后,显示红屏(非法字符 Error on load image on React-native: Unexpected character )
  • 解决方法:1.关闭项目,重新通过命令行启动。 2.如果还不行,那么再重试多次,一般会行的
5.红屏,提示 JSON value 'XXXX' of type NSString cannot be converted to a YGValue. Did you forget the % or pt suffix ?
6.红屏,和上面一样,但提示的文字是“Runtime is not ready for debugging”

这一般是这种情况: 就是你先打开了调试器(React-Native-debugger),然后才启动的项目,项目认为“自己还没有准备好调试”,所以报了这个错误

解决方法

  1. 调出控制台菜单(IOS模拟器下通过control + D开启)
  2. 选择Stop Remote JS Debugging
7.红屏,和上面一样,提示文字: “Unhandled JS Exception: global.nativeTraceBeginSection is not a function”
这个问题据说不少人遇到过,解决方法是:在模拟器上删掉APP,然后重新编译安装,

它属于“完全的不可抗力”,不是因为你做错了什么,但问题恰恰就这样出现了。。。。。

参考链接 https://cloud.tencent.com/developer/ask/216506/answer/333025

8. 发现程序有错但是控制台看不到红色错误(error)???

这是因为。。。。。。。报的错误可能不是红色的,而是白色的

下面的这位error老弟,我还是第一次看到长得这么“白白净净” 的Error, 难道你不应该是“红脸关公”? ?

解决办法:认真从一大堆输出中通过过滤掉其他信息的方式,定位到白色色块的error输出

9.调出React-Native-Debugger的时候,报警告:Another debugger is already connected

一般情况下,这是因为你的浏览器页面打开了debugger页面,长这样的
解决办法:把浏览器的debugger关掉就可以了

10.解决MAC和IOS模拟器之间的复制粘贴问题

用过IOS模拟器的人就会发现一个问题,MAC上的东东是不能直接粘贴到模拟器的APP上的

解决办法: https://www.jianshu.com/p/a34ab4933211

11.如果报错:组件不是class/function,而是undefined

不一定是当前组件没有正确导入,还可能是当前组件的子组件没有正确导入

12.com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: INSTALL_FAll

rn安装到安卓设备上失败: 安装版本低于设备上已安装版本 需卸载已存在版本

12.热重载失效的现象

大概率和PureComponent的使用有关

13. encountered an internal error

Metro Bundler has encountered an internal error, please check your terminal error output for more details (null))

解决办法:

运行 npm start — —reset-cache 清除缓存

14.IOS模拟器使用起来非常缓慢,如同乌龟和树獭一般,而且卡顿死机看心情

解决办法:毫无办法,听天由命

WebView篇

介绍

为什么我们会用到WebView呢? 这是因为,为了降低开发成本,我们的原生应用里可能会用到一些内嵌的H5页面,那么,这些内嵌的H5页面该怎么调试呢?可以参考下面的几篇文章

可以参考相关文章

  • IOS: https://www.tuicool.com/articles/ZBFnUbz
  • 安卓: https://developers.google.com/web/tools/chrome-devtools/remote-debugging/

注意点

  • IOS指导上说的“Web检查器开关”如果没有找到,就说明已经默认开了
点击展开阅读全文
本文参与 腾讯云自媒体分享计划 ,分享自作者个人站点/博客。
原始发表:2019-10-10 , 如有侵权请联系 cloudcommunity@tencent.com 删除
ios
https
网络安全
react
android

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!

ios
https
网络安全
react
android
评论
登录 后参与评论
0 条评论
热度
最新
登录 后参与评论
关于作者
啦啦啦321
0
文章
0
累计阅读量
0
获赞
前往专栏
目录
  • 前言
  • RN报错的终极解决办法
  • 目录
  • Android真机调试
  • IOS模拟器篇
  • WebView篇
切换旧版
领券
  • 社区

    • 专栏文章
    • 阅读清单
    • 互动问答
    • 技术沙龙
    • 技术视频
    • 团队主页
    • 腾讯云TI平台
  • 活动

    • 自媒体分享计划
    • 邀请作者入驻
    • 自荐上首页
    • 技术竞赛
  • 资源

    • 技术周刊
    • 社区标签
    • 开发者手册
    • 开发者实验室
  • 关于

    • 社区规范
    • 免责声明
    • 联系我们
    • 友情链接

腾讯云开发者

扫码关注腾讯云开发者

扫码关注腾讯云开发者

领取腾讯云代金券

热门产品

  • 域名注册
  • 云服务器
  • 区块链服务
  • 消息队列
  • 网络加速
  • 云数据库
  • 域名解析
  • 云存储
  • 视频直播

热门推荐

  • 人脸识别
  • 腾讯会议
  • 企业云
  • CDN加速
  • 视频通话
  • 图像分析
  • MySQL 数据库
  • SSL 证书
  • 语音识别

更多推荐

  • 数据安全
  • 负载均衡
  • 短信
  • 文字识别
  • 云点播
  • 商标注册
  • 小程序开发
  • 网站监控
  • 数据迁移

Copyright © 2013 - 2023 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有

深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569

腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287

问题归档 专栏文章 快讯文章归档 关键词归档 开发者手册归档 开发者手册 Section 归档

Copyright © 2013 - 2023 Tencent Cloud.

All Rights Reserved. 腾讯云 版权所有

登录 后参与评论
 
推荐文章
非常酷的豆腐  ·  創建永續鄉村旅遊與寄宿家庭之商業模式印度當地社區與國際遊客之 ...
3 月前
帅呆的炒粉  ·  pytorch 中的#@save的意思_#save python是什么意思
3 月前
性感的香蕉  ·  徕卡、蔡司、哈苏,到底谁才是真正的联名手机之王?
7 月前
暴走的伤疤  ·  巨鹿县公安局_百度百科
1 年前
大鼻子的海龟  ·  一战中,沙俄可以轻松击败奥匈、奥斯曼,却为何打不赢德国-腾讯新闻
1 年前
帅气的领带  ·  排队论_51CTO博客_蛋疼排队论
1 年前
坚强的小熊猫  ·  john nash诺贝尔获奖感言_头条
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
小百科 - 百科知识指南
© 2024 ~ 沪ICP备11025650号