什么是适用于 Android 的 AWS Lambda 依赖项?

What is the AWS Lambda dependency for Android?

提问人:user20958695 提问时间:11/17/2023 最后编辑:user20958695 更新时间:11/17/2023 访问量:35

问:

我想在我的 Android Studio 项目中使用 AWSLambdaClient java 类来调用 lambda 函数。gradle 文件依赖项部分应该添加的依赖项是什么?出于某种原因,我似乎无法在网上找到它。

我确实设法找到了我还需要的 AWSMobileClient 类的依赖关系,即 .但找不到 AWSLambdaClient 的依赖项。人工智能提出了建议,但它没有奏效。'com.amazonaws:aws-android-sdk-mobile-client:2.16.+@aar''com.amazonaws:aws-lambda-client:2.17.1'

亚马逊网络服务 Android-Studio AWS-Lambda

评论

0赞 Mark B 11/17/2023
我假设你的意思是,你链接到它,而不是你在问题中多次提到它,但似乎不是一个实际存在的类。AWSLambdaClientAWSClient
0赞 Mark B 11/17/2023
此外,如果您要访问的 REST API 恰好具有 Lambda 函数作为后端,则应使用 REST API 客户端。将用于直接调用 Lambda 函数,而不是用于调用 REST API。REST API 将后端实现从前端客户端(您的 Android 应用程序)中抽象出来,以便客户端不需要某些特定于实现的 AWS Lambda 客户端库。AWSLambdaClient
0赞 Vikram S 11/17/2023
如果您使用 AWS Lambda 支持的 API 网关构建 REST API,那就更好了。若要调用 REST API,可以使用任何 HTTP 客户端库
0赞 user20958695 11/17/2023
@MarkB 对不起,感谢您的澄清。我需要直接调用 Lambda 函数。我有一个预先编写的代码可以做到这一点,但是有关AWSLambdaClient和同一软件包中的其他一些类的导入缺少其相应的依赖项。找不到。
0赞 user20958695 11/17/2023
@VikramS 谢谢,如果可能的话,我宁愿使用这些库,因为我正在整理一个预先编写的代码

答:

0赞 Mark B 11/17/2023 #1

官方文档指出,这将是将 AWS Java 开发工具包的 AWS Lambda 部分包含在 Gradle 项目中所需的 Gradle 依赖项:

dependencies {    
    implementation(platform("software.amazon.awssdk:bom:2.21.1"))
    implementation("software.amazon.awssdk:lambda")
}

不过,我不确定这在 Android 运行时中是否有效。


请注意,这也可能会使您的 Android 项目的大小大幅膨胀。通过 AWS API Gateway 公开您的服务,并在 Android 应用程序中使用标准 HTTP 客户端来调用该 API,这是一个更简洁的解决方案。