myfreax

如何使用包含aar模块Android安卓Flutter插件

当你编写了一个 Flutter 插件来使用需要包含一些 .aar 模块的 SDK,它在插件的示例应用程序中构建并完美运行,但是当你在不同的应用程序中导入Flutter插件并尝试构建它时,构建立即失败并显示一条消息,Direct local .aar file dependencies are not supported when building an AAR

1 min read
By myfreax
如何使用包含aar模块Android安卓Flutter插件

当你编写了一个 Flutter 插件来使用需要包含一些 .aar 模块的 SDK。它在插件的示例应用程序中构建并完美运行,但是当你在不同的应用程序中导入Flutter插件并尝试构建它时,构建立即失败并显示一条消息,Direct local .aar file dependencies are not supported when building an AAR.。

为什么示例应用程序可以毫无问题地构建和运行,而不同的应用程序却不能?我唯一能想到的是我从 pubspec中的路径导入插件,但在我看来这不太可能是罪魁祸首。

  1. 在插件libsandroid项目根目录添加一个文件夹。在那里添加.aar文件。
  2. 在插件的build.gradle文件中,更新rootProject.allProjects如下:
    repositories {
        google()
        jcenter()
        flatDir {
            dirs 'libs'
            dirs project(':your_plugin_name_here').file('libs')
        }
    }
}

仍然在同一个 项目build.gradle 中,添加您的.aar文件作为依赖项,如下所示:

implementation(name:'aar_name_here', ext:'aar')

在要使用插件的 Flutter 应用程序中,打开app的build.gradle文件并将插件添加为依赖项,如下所示:

android {
  ...
  
    dependencies {
        implementation project(':your_flutter_plugin');
    }
}

在我们使用插件的应用程序settings.gradle文件中包含插件,更改

include ':app', ':your_flutter_plugin'

Related Articles