React Native,Android Log.

Nur*_*Bar 12 java android react-native

有没有办法在本机中看到来自android的本机(java)模块的日志?

我正在使用javas日志模块https://developer.android.com/reference/android/util/Log.html - 但我从那里得不到任何东西.说实话,如果可能的话,我不确定如何使用它.atm没有太多代码 - 只是

    Log.d("Notification","Notify App");
Run Code Online (Sandbox Code Playgroud)

因为我想知道我是否可以在某处看到通知 - 我知道java模块已正确注册,因为我正在调用其他函数.

谢谢!

nab*_*abn 10

如果你把Log.ds放在你的本机代码中,你可以在android studio中使用Android Device Monitor访问日志,或者在终端上使用此命令: adb -d logcat <your package name>:<log level> *:S

确保手机中已启用USB调试.


Cal*_*Bot 10

adb logcat -s 可用于打印其标签列在其标签列表中的日志。

对于您的问题,标签是“通知”,因此您可以使用以下命令查看:

adb logcat -s Notification:V
Run Code Online (Sandbox Code Playgroud)

对于 React Native 开发,您可能需要“ReactNative”和“ReactNativeJS”标签来获取 ReactNative 和 Javascript 消息……所以适当的命令是:

adb logcat -s ReactNative:V,ReactNativeBleManager:V
Run Code Online (Sandbox Code Playgroud)

要为任何其他模块添加日志,请查看 Java 代码以查看它使用的标记,然后将其添加到列表中。

例如,蓝牙模块“react-native-ble-manager”记录为Log.d("ReactNativeBleManager", "The log message"),因此要包含这些消息,请将命令更改为:

adb logcat -s ReactNative:V,ReactNativeJS:V,ReactNativeBleManager:V
Run Code Online (Sandbox Code Playgroud)

请参阅此处的文档:https : //developer.android.com/studio/command-line/logcat.html了解更多信息。


Jam*_*ren 6

React Native CLI 现在附带一个用于显示 JavaScript 日志的命令

npx react-native log-android
Run Code Online (Sandbox Code Playgroud)

很酷的是,如果您使用Log.i("ReactNative", "My log here");(请确保首先将其导入到 Java 文件的顶部import android.util.Log;),您将看到它显示在终端中。神奇的部分是 Log.i 方法调用第一部分的“ReactNative”过滤器。