如何为 Android 调试 cordova 插件

How to debug a cordova plugin for Android

您好,我已经为 Android 创建了一个 cordova 插件。但是它不能正常工作。

我想调试它 IDE。

当我在手机上启动应用程序时,如何调试 cordova android 插件文件?

有哪些不同且最简单的方法?

提前致谢。

我认为最好的方法是使用 logcat。 Logcat 也内置于 Android Studio 中,因此您可以使用它 IDE 来帮助您进行调试。

如果您是 运行 logcat 从命令行,您可以使用以下命令限制到某个标签:adb logcat -s "YOURTAG"

如果您是 运行 通过 Android Studio,请参阅 this documentation.。您可以将调试器附加到 运行 进程,因此如果您没有在 Android Studio 中完成应用程序,您仍然可以将 Android studio 调试器附加到它。这是通过选择 Attach debugger to Android proccess 完成的。再次查看文档了解更多信息。

Android Studio 还可以根据标签名称、日志类型等进行过滤。这是通过展开过滤器菜单并添加过滤器(接受按类型、标签名、正则表达式过滤)来完成的。

最后,实际让你的插件吐出有价值的信息。首先导入 Log class: import android.util.Log; 并设置一个 TAG private static final String TAG = "MYTAGNAME"。每当您希望写入日志(在此示例中为调试级别)时,请调用 Log.d(TAG, "Your message to debug");

有关更多信息,请参阅 log documentation

就个人而言,我在家里使用命令行 logcat,但 Android Studio 确实提供了一个灵活的界面来调试您的插件。

  1. 构建您的 Android 应用程序(通过 cordova build android)并将该应用程序安装到您的设备中。例如,我在计算机和设备上安装了 Dropbox,并使用该免费服务在它们之间传输文件。

  2. 使用 USB 插头将设备插入计算机。

  3. 设置设备以启用调试。在设备中,设置:

Allow USB Debugging

Select debug app

  1. 在控制台中,键入以下内容以便我们可以完整阅读所有消息:

adb logcat -v long

如果您想将所有消息输出到 Mac 桌面上的文本文件(PC 不同),请键入:

adb logcat > ~/Desktop/logcat.txt

控制台应该立即输出大量文本行。如果停在

-waiting for device -

并冻结,然后检查您的屏幕以查看是否有弹出窗口来回答。如果有none,则从设备上拔下USB,然后重试。在我的设置 > 开发人员选项中,我选择了“Select 调试应用程序”,然后选择了我安装的应用程序;这也可能有帮助。

当报告停止时,有时我会点击Return几下以标记space差距较大的地方,然后再进行下一步。这告诉我要备份多远。

  1. 点击设备中的应用程序图标启动它。

  2. 读取logcat中的输出。

  3. 按 Ctrl+C 停止 logcat。

laughingpine的扩展响应,我用的是这个方法: 使用 chrome + 开发工具 + genymotion 调试 java 脚本部分。您可以从 "inspect devices" 访问它并且可以调试 java 脚本部分。 问题是调试我自己的插件。为此,我从控制台构建项目 "cordova build",并将项目文件夹中 platforms\android 的内容导入 Android 工作室。 在 gradle 修复一些错误后,我可以 运行 并调试 android studio + genymotion,以访问 .java 文件。

在你的开发机器上打开Chrome,进入开发者工具(右击->检查)。在开发者工具的右上角有一个竖着的三个点的图标,按它然后 select "more tools" -> "inspect devices".

如果您的 Android 设备已插入您的机器和 运行 Cordova 项目,您应该会看到 Android 设备列在 "inspect devices" 对话框。单击该名称,对话框发生变化,一个标记为 "inspect" 的按钮变为可用。按下此按钮,一个新的 window 会出现 Chrome 开发人员工具,您可以使用它来完全调试您的混合应用程序。