当前位置: 首页 > 知识库问答 >
问题:

如何调试从Flutter Pllatform通道调用的原生Android

邵麒
2023-03-14

我似乎不知道如何使通过平台频道从颤振应用程序调用的本机Android模块的调试工作正常。我使用的是颤振文档中的样本(https://flutter.dev/docs/development/platform-integration/platform-channels).我试过以下方法:

  1. 在IntelliJ中打开Flutter项目
  2. 右键单击android文件夹,选择Flutter|Open Android Moules in Android Studio
  3. Android Studio打开原生Android代码。
  4. 在Android代码中设置断点
  5. 从Android Studio点击调试
  6. 模拟器显示等待调试器应用程序正在等待调试器附加,而在Android Studio中,调试控制台显示连接到目标VM,地址:localhost:8601
  7. 从IntelliJ运行Flutter应用程序(我也尝试过从IntelliJ调试-flutter代码将在断点上停止)
  8. 原生Android代码的断点永远不会中断

我做错了什么?

共有1个答案

谷梁宝
2023-03-14

我开始了另一个项目,并且能够让它工作。

要调试颤振代码,请从IntelliJ启动调试器

要调试本机android代码,请右键单击android文件夹并选择Flatter |在android Studio中打开android模块。在那里启动调试器。颤振应用程序将在模拟器中打开,您可以在本机代码中设置/点击断点

 类似资料:
  • 我一直在尝试调试通过平台通道在颤振中调用的本机android代码,调试仅在颤振端进行。在本机android中,执行不会命中断点。应用程序按预期工作,但调试没有。我正在使用Android studio。有人能告诉我如何调试原生android代码吗?

  • 我正在开发一个原生插件,并试图进行单元测试。所有单元测试都将在Dart中完成(无本机代码)。 Flutter有一个测试示例,说明如何使用测试从Dart到本机的调用方法通道。 问题是,我还没有找到测试从本机调用Dart的方法通道的方法,该Dart使用<code>setMethodCallHandler</code>来处理本机调用。 下面是一个示例

  • 因此,我正在创建一个React本机应用程序,我想从应用程序的本机部分调用JavaScript函数。 我知道我可以使用Native模块在Native和React Native之间建立一座桥梁,我还知道从Native模块我可以发出React Native可以接收的事件。 但是,本机模块内的任何函数调用只能从React本机本身内部发生,因为它需要一个React本机上下文,因此我只能在React本机本身调

  • 有些方法返回。这是一个典型的模式,分多个层: 假设返回一个(它向数据库写入一些内容,发送一条消息等)。如果我只是用替换它,那么一切都按预期工作,否则就不是这样了。更具体地说,单声道从未完成,它贯穿所有处理,但在结束时错过了终止信号。所以这些东西实际上是写在数据库中的,消息实际上是发送的,等等。 为了证明没有终止是问题所在,这里有一个有效的黑客: null 我不能在应用程序之外用简单的单工作流复制这

  • 我的工作区布局为: 如何在Eclipse中调试原生库?有人对此有所暗示吗?

  • 游戏发布到原生平台后,由于运行环境不同,可能会出现在浏览器预览时无法重现的 Bug,这时我们就必须直接在原生平台下进行调试。Cocos Creator 可以很方便地对原生平台中的 JavaScript 进行远程调试。 模拟器调试 一般来说,原生平台的大多数问题都可以在模拟器中进行重现,我们可以先在模拟器中测试,有问题的话直接在模拟器中调试即可。模拟器调试有以下两种方法。 方法一 首先在编辑器工具栏