如何调试第三方flutter插件

Bre*_*ton 7 debugging plugins android flutter

我正在构建一个使用第三方插件的 flutter 应用程序。

该插件在其 android java 代码中有一个错误。

问题是我无法找到有关如何设置开发环境以从我的应用程序中调试插件的文档。

我应该注意到原始开发人员无法重现该错误,因此我需要让它在我的应用程序中运行。

到目前为止,我发现的说明涉及必须构建 apk,但这很耗时,而且似乎没有必要。

我是一名经验丰富的 java 和 dart 程序员,所以我在基础知识方面没有问题(即我有 Android Studio 和 vs 代码运行,我可以使用它自己的示例代码调试插件)。

这是我到目前为止的过程:

git clone the plugin to my local system.

Within my application add an override in my apps pubspec.yaml to 
import the plugin from my local system.

dependency_overrides:
  flutter_sound:
    path: ../flutter_sound

Build my app so we can open in android studio.


    Note: I had to delete my .pub-cache/hosted folder and then run 
   'flutter pub get' as some older (unused?) packages seem to stop 
    the build. I also ensure that I had the latest packages for 
    every package I was using.

flutter build apk


In android studio

Import my app project
- open the android project contained with my app project folder.
 e.g.
  ~/git/app/android

Wait for the gradle build to complete.

Start the android studio debugger and select a simulator.

Open the 'Android Monitor' tab at the bottom of Android Studio.
Run Code Online (Sandbox Code Playgroud)

Bre*_*ton 8

所以我设法让这个工作。

这个过程可能有一些多余的步骤,但我已经把它们都包括在这里,因为我没有时间回去找出哪些是不需要的。

注意:插件始终包含在 dart“包”中。

git clone 第三方包(在这个例子中是 flutter_sound)到你的本地系统。

在应用程序的 pubspec.yaml 中添加一个覆盖以从本地系统导入包。

    dependency_overrides:
      flutter_sound:
        path: ../flutter_sound
Run Code Online (Sandbox Code Playgroud)

更新您的依赖项:

pub upgrade
Run Code Online (Sandbox Code Playgroud)

构建您的应用,以便我们可以在 android studio 中打开。

在应用程序项目根目录(您的 pubspec.yaml 所在的位置)中运行:

flutter build apk
Run Code Online (Sandbox Code Playgroud)

来自安卓工作室

导入您的应用项目

等待 gradle 构建完成(这需要几分钟)。

在您的应用程序项目中(从工作室的项目面板中)找到“android”文件夹。

右键单击 android 文件夹。选择“Flutter -> 在 Android Studio 中打开 Android 模块”

出现提示时,告诉 Android Studio 在新窗口中打开 Android 模块。

等待 gradle 构建完成。

启动 android studio 调试器并选择一个模拟器。

打开 Android Studio 底部的“Android Monitor”选项卡。

您现在应该能够在 Java 代码中设置断点。

祝你好运。