如何在 React Native 中启用 Android 监视器以检查日志?

Posted

技术标签:

【中文标题】如何在 React Native 中启用 Android 监视器以检查日志?【英文标题】:How to enable the Android monitor in React Native for checking logs? 【发布时间】:2018-01-01 07:55:38 【问题描述】:

我是 React Native 的新手。我想查看我的反应文件的日志。我正在使用 android studio 使用 react-native 项目和 genny motion 作为 模拟器。能否请您指导我,如何在 android studio 中查看日志或启用 android monitor

即使我已经安装了 Facebook 的 react 开发工具来调试代码:https://facebook.github.io/react-native/docs/debugging.html

但无法得到特定的解决方案

已经访问:How do you debug React Native?

How to do logging in React Native? 我检查了很多解决方案,但它不适用于 android 6.0 版本

但不工作请指导我,在此先感谢

【问题讨论】:

如果你想要更轻的解决方案,你可以从命令行运行“react-native log-android”,但它不像远程调试 js 那样花哨 【参考方案1】:

如果您使用的是窗口,您可以尝试按 CTRL+M,否则在 mac CMD+D 中打开调试菜单。打开后选择REMOTE JS DEBUGGING,它会自动打开chrome浏览器让你调试js错误。如果您连接的是真实设备,Android Studio 调试将起作用。

例如。调试菜单

我从How do you debug react-native? 找到了 genYmotion 的答案。不知道对你有没有用,但值得一试。

对于 Android 应用,如果您使用 Genymotion,您可以通过按 ctrl + m 来切换菜单,但您可能需要在菜单中启用它:

取消勾选取消勾选小部件 点击 chrome 中的调试

【讨论】:

我正在使用 linux mint 那么我如何打开菜单设置。@digit 感谢更新,但它不起作用,小部件已正确打开,但我想打开 remotejs 窗口。是否可以仅在出现任何错误时才打开? 你为什么要。打开 remotejs 窗口需要时间并重新加载整个应用程序。对我来说,这浪费了我调试的时间。让它打开,对不起,我没有找到任何与 linux 调试相关的资源。 没关系..感谢您的努力。但是单击 cltr+m 或任何任何操作都不起作用,我在想远程 js 调试将在其中工作.. 来自meta.***.com/questions/299680/…,您好,您无法撤回您的赏金,但您可以等待 7 天,直到它自行结束。没关系,接下来的 7 天,你可以在我的答案上打勾,而不会失去你的观点。【参考方案2】:

现在我已经解决了上面这些 cmets 的问题,您可以点击

Ctrl + D 再点击 Ctrl + M 获取调试内容

然后运行以下命令以检查日志

React-native log-android 

这样您就可以在 android studio 终端日志面板中看到控制台日志。

但在此之前你需要运行命令:

Npm start 

通过直接在模拟器中获取捆绑包来检查最新更改

谢谢

【讨论】:

【参考方案3】:

而不是使用简单的 console.log 命令

使用 Reactoron 记录数据 链接在这里: https://github.com/infinitered/reactotron

登录 React Native 的最佳选择。

【讨论】:

以上是关于如何在 React Native 中启用 Android 监视器以检查日志?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 react-native-webview 中启用安全上下文?

如何仅在特定屏幕(例如主屏幕)上启用抽屉导航 [react native] [react navigation]

如何通过 React Native 在 Android WebView 中隐藏滚动条

未启用可选链接 React Native

如何从 URL 下载图像并缓存 Android (React-Native)

React Native:如何选择性地启用 LayoutAnimation