gpt4 book ai didi

android - 如何将 Android 库(AAR 文件)嵌入到电容器插件中?

转载 作者:行者123 更新时间:2023-11-29 02:17:59 25 4
gpt4 key购买 nike

iOS 的问题已经得到解答:
How to embed framework in capacitor plugin for iOS

对于 Android,当我通过创建新模块将 aar 文件添加到电容器插件时遇到问题。通过 npm 发布我的电容器插件并将其集成到 ionic 应用程序后,无法再找到 aar 库。

最佳答案

就像在 iO 上所做的那样,我们在这里做的实际上是一样的。但是,使用 Android Studio 和 gradle 而不是 xcode 和 cocoapods。
好的,但首先要做的是。

当命令npx @capacitor/cli plugin:generate发布后,CLI 所做的是启动一个文件夹,其中包含一个用于 iOs 的 cocoa pod 和一个用于 Android 的 gradle 插件。您可以在下图中看到这一点。

Plugin folder showing all the files inside it

发出上述命令后,您生成的插件文件夹内将有一个 ios 和 android 文件夹。如果选中此选项,请打开您的 android studio 并选择打开 android studio 项目的选项,选择 安卓文件夹来完成这个过程。您可以在初始屏幕上选择此选项,如下图所示。

Initial screen o android studio showing the option to open a project

打开项目后,如果一切顺利,您的 android studio 会显示这样的屏幕

Zoomed version of the files pane of Android Studio and gradle log showing that the project was successfully opened

现在,让我们添加插件文件。为此,请右键单击 android java 模块并选择“打开模块设置”选项,如下图所示。

Menu showed by the action of right clicking the android java module

打开以下屏幕后,我们需要在此处添加一个包含我们的 jar/aar 依赖项的模块。为此,只需单击上面显示的 + 号。

Plus sign highlighted

在新模块屏幕上,如果向下滚动,将出现“导入 .JAR/.AAR 包”,如上所示。

new module screen showing the referred option

之后,找到你的 aar 包。结果如下。

aar package imported

单击完成,将出现下一个屏幕。如果没有,请在同一屏幕中点击应用按钮。

module added screen

由于我的模块具有依赖关系,因此我将重复本教程的这一部分。

接下来,我们需要添加我们最近添加的模块作为 android 模块的依赖项。在同一屏幕上,单击依赖项选项和“声明的依赖项” Pane 的加号。

Plus sign of the declared dependencies highlighted

将显示以下屏幕。我们需要选择第三个选项,因为我们早期所做的是添加一个模块。

Result of the plus sign click

现在,让我们选择我们的模块。它很简单,只需标记它并单击确定。因为我必须,如前所述,我会检查他们两个。

add module dependency screen showing the dependencies to add

如果这一步进展顺利,你现在应该让你的 android 模块多了一个依赖项(或者在我的例子中是两个)。下图显示了这一点。

module dependencies showing the new ones

点击应用并关闭此窗口。 Gradle 将在后台重建您的插件项目,之后,由于我更了解 kotlin,我会将我的项目转换为 kotlin。如果您愿意,可以如下图所示完成,但这不是强制性的。

kotlin first steps to convert

正确完成以上所有操作后,您现在可以在 TestPlugin.kt(如果您不使用 kotlin,则为 .java)上导入您的库。作为引用,下图显示了我的插件的最低实现。

minimum kotlin implementation of my plugin

在插件文件夹中,我们完成了。使用 npm 打包并安装在您的应用程序上。

接下来,要让插件正常工作,我们需要在您将使用它的应用程序的 MainActivity 上添加它的类。

Main activity of the app showing the add our newly created plugin

现在,为了让它工作,我不能 100% 确定这是正确的方法,但因为它有效,所以我这样做。我的做法是通过脚本在应用程序的android模块上添加插件模块。我想我在 gradle 插件实现上遗漏了一些东西,但是因为它可以工作.....

为此,请在您的应用程序上访问 android/settings.gradle 文件并附加以下内容:
sdk add

请注意,根据您所做的更改,settings.gradle 文件将被重写。做一个脚本来保持信息总是在那里或在构建之前检查它。

就是这样,如果您知道下一步的另一种方法,或者如果有更好的方法,请发表评论。而且,如果这个答案有用,请竖起大拇指,因为这个实现在完成和工作时让我哭了一点(当然是幸福)。

关于android - 如何将 Android 库(AAR 文件)嵌入到电容器插件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59068585/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com