如何在flutter插件中导入AAR文件?

问题描述 投票:0回答:4

我正在使用 flutter 插件,想要在插件的 android 部分导入

.aar
项目。我尝试打开 android 项目并通过导入模块来导入
.aar
项目,将其包含在
setting.gradle
中并将其添加到
build.grade
的依赖项中(就像任何其他本机 android 项目一样)。但是,当我运行flutter项目时,找不到
.aar
项目。

我得到的错误是

评估项目“:flutter_plugin_andriod”时出现问题

在项目“:flutter_plugin_andriod”中找不到路径为“:commonlib”的项目。

有人解决了吗?

flutter flutter-dependencies aar flutter-plugin
4个回答
2
投票

将您的 .aar 放入 Android/app/libs 在 Android/app/build.gradle 中导入 aar :

dependencies {
   implementation fileTree(include: ['*.jar'], dir: 'libs')
   implementation files('libs/myaarlibr.aar')
}

此后您的 .aar 就可以使用了


2
投票

我终于找到答案了。

  • 在 build.gradle 所在目录中创建一个 lib 文件夹,并将 aar 文件放入该文件夹中。
  • 然后在 rootProject.allprojects 中添加 flatDir { dirs project(':plugin_name').file('libs')}
  • 然后在构建中添加依赖。在依赖项部分中将文件设置为:
    api(名称:'your_aar_file_name',分机:'aar')

    注意: 确保将 gradle.build 文件中包含的所有依赖项(如果您的 aar 文件依赖于其自己的任何 gradle.build 文件)添加到应用程序 build.gradle 文件的依赖项部分。这是我的案例中的主要问题。

1
投票

请按照以下步骤操作:

在plugin_folder/android/中创建文件夹

libs
并将您的*.aar文件放在那里。

在plugin_folder/android/build.gradle中

rootProject.allprojects {
    repositories {
        google()
        mavenCentral()
        flatDir {
            dirs project(':plugin_name').file('libs')
        }
    }
}
...
dependencies {
    implementation (name: 'file-sdk-name', ext: 'aar')
    ...
}

祝你好运!


0
投票

有一个

[open issue at Flutter's Github][1]
今天仍然开放。

我解决 AAR 库并将其导入 Flutter 插件的唯一方法是按照以下步骤操作:

  1. .aar
    文件重命名为
    .zip
  2. 解压 zip 文件并将
    classes.jar
    复制到 Flutter 插件的
    libs
    文件夹中
  3. 将其重命名为同一个
    .aar
    文件,这样导入时就不会迷路了
  4. .jar
    添加到您的
    dependencies
dependencies {
   implementation fileTree(include: ['*.jar'], dir: 'libs')
}
  1. 正常构建插件。
© www.soinside.com 2019 - 2024. All rights reserved.