当没有启用"Debug JS"时,用于android运行的React native非常慢

Lan*_*Hub 25 reactjs react-native

我正在开发一个使用react native的应用程序,我使用ios和android的一些代码库,ios版本运行顺利.

但Android版本运行速度非常慢.奇怪的是:

当我摇动手机,并单击"调试JS"以启用Chrome功能调试时,它运行得更快,任何人都有一个线索的原因?

efk*_*kan 29

有时,一个或多个活动console.log()行会导致此问题. console.log如果存在,则应搜索并删除这些行.

同样在生产中,babel-plugin-transform-remove-console可用于自动清除所有console.*方法.


jev*_*lio 10

在调试模式下运行时javascript代码的执行速度不同的原因是当您处于调试模式时,为了启用调试体验,React Native会在您计算机上的Chrome浏览器中执行代码,并且结果为执行被桥接到设备上.

在调试模式之外,代码在设备本身的JavaScriptCore引擎中执行.

也就是说,我无法解释为什么设备上的执行速度如此之慢.您是在低功耗设备上运行,还是在分配内存有限的仿真器上运行?

  • 我在设备上也遇到这种缓慢的情况,当我远程调试时,它很好,这是我无法解释的。2015年11月之后,你有什么新的想法吗?(顺便说一句,喜欢你的 redux-offline!) (2认同)

Swo*_*man 5

React Native应用程序在Android上运行速度较慢.但是在开发过程中性能并不真实.您可以构建发布版本来检查实际性能,发布版本比开发版本快得多.

还有一些不良代码可能会使您的应用程序变慢.比如console.log(),它确实在开发过程中减缓了应用程序.避免不必要的重新渲染的观点,不要用箭头功能,.bindrender