使用 .aar 模块的 Flutter 插件在示例应用程序中构建并运行良好,但无法在不同的应用程序中构建
Flutter plugin that uses .aar modules builds and runs fine in the example app but fails to build in a different app
我编写了一个 Flutter 插件来使用需要包含一些 .aar 模块的 SDK。它在插件的示例应用程序中构建并 运行s 完美,但是当我在另一个应用程序中导入插件并尝试构建它时,构建立即失败并显示一条消息,指出其中一个 .aar 模块可能在插件中找不到。这是没有意义的,因为模块肯定存在 - 如果模块不存在,则在示例应用程序中使用 SDK 的平台通道将失败。
为什么示例应用程序可以构建并且 运行 没有任何问题,但不同的应用程序却不会?我唯一能想到的是我从我的 pubspec 中的路径导入插件,但我认为这不太可能是罪魁祸首。
如有任何建议或帮助,我们将不胜感激。 TIA!
我明白了!!!!
答案如下:How to add .aar dependency in library module?
Flutter插件适配方式如下:
- 在插件中
android
项目的根目录下添加一个 libs
文件夹。在那里添加 .aar
文件。
- 在插件的
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 应用程序中,打开应用程序级
build.gradle
文件并添加 插件本身 作为依赖项,就像这样:
android {
...
dependencies {
implementation project(':your_flutter_plugin');
}
}
- 在我们使用插件的应用程序的
settings.gradle
文件中,更改
include ':app'
到
include ':app', ':your_flutter_plugin'
这应该可以做到!!
我编写了一个 Flutter 插件来使用需要包含一些 .aar 模块的 SDK。它在插件的示例应用程序中构建并 运行s 完美,但是当我在另一个应用程序中导入插件并尝试构建它时,构建立即失败并显示一条消息,指出其中一个 .aar 模块可能在插件中找不到。这是没有意义的,因为模块肯定存在 - 如果模块不存在,则在示例应用程序中使用 SDK 的平台通道将失败。
为什么示例应用程序可以构建并且 运行 没有任何问题,但不同的应用程序却不会?我唯一能想到的是我从我的 pubspec 中的路径导入插件,但我认为这不太可能是罪魁祸首。
如有任何建议或帮助,我们将不胜感激。 TIA!
我明白了!!!!
答案如下:How to add .aar dependency in library module?
Flutter插件适配方式如下:
- 在插件中
android
项目的根目录下添加一个libs
文件夹。在那里添加.aar
文件。 - 在插件的
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 应用程序中,打开应用程序级
build.gradle
文件并添加 插件本身 作为依赖项,就像这样:
android {
...
dependencies {
implementation project(':your_flutter_plugin');
}
}
- 在我们使用插件的应用程序的
settings.gradle
文件中,更改
include ':app'
到
include ':app', ':your_flutter_plugin'
这应该可以做到!!