如何正确地将库模块依赖项添加到 Flutter Plugin 的 Android 文件夹? [关闭]
Posted
技术标签:
【中文标题】如何正确地将库模块依赖项添加到 Flutter Plugin 的 Android 文件夹? [关闭]【英文标题】:How do I add library module dependency to a Flutter Plugin's Android folder correctly? [closed] 【发布时间】:2019-07-27 02:21:20 【问题描述】:我正在尝试在 android 上编写一个依赖第三方库的 Flutter 插件。
依赖项有一个build.gradle
文件,我有源代码,我可以使用gradle build
从命令行构建一个aar
文件。
我尝试使用 Android Studio 添加依赖项,但它最终位于 my_plugin/example/android
目录中,无论我尝试将其移动到插件的 my_plugin/android
目录多少次,我总是失败。
这是一个问题的原因是,即使示例应用程序可以构建和运行,我也无法在其他 Flutter 应用程序中使用该插件(这是创建 Flutter 插件的全部原因)。
我需要如何将本地库模块(源代码)或aar
(我可以随时构建)添加到 Flutter 插件的 Android 实现中?
【问题讨论】:
最后,我只是将整个库复制粘贴到我的应用程序代码中,修复了导入,更改了文件夹结构¯_(ツ)_/¯ 同意。整个android插件目录结构非常内嵌;让我想起了过去一切都非常棘手且无证的过去。我一直在搜索示例项目以寻找答案……还没有找到。现在flutter网站也不准确,所以好像是被忽略的项目 【参考方案1】:嗯,你已经完成了一半......
-
转到文件 -> 新模块 -> 选择 JAR/AAR,找到要添加的 JAR/AAR,拒绝创建 gradle 包装器,这将创建一个包含您的文件和 build.gradle 文件的文件夹。复制库文件夹名称以供后续步骤使用。
将新创建的文件夹移动到
android
文件夹。
在android
文件夹中打开settings.gradle
并在文件开头添加以下行:
include ':android/library_folder_name'
在 android
文件夹中打开 build.gradle
并在依赖项块中添加以下行:
implementation fileTree(dir: 'library_folder_name', include: ['*.aar', '*.jar'], exclude: [])
【讨论】:
以上是关于如何正确地将库模块依赖项添加到 Flutter Plugin 的 Android 文件夹? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
将库从依赖项重定位到 package.json 中的 devDependencies 块的命令?