如何使用 Amplify 为 GraphQL API (AWS AppSync) 生成 类

How to generate classes for GraphQL API (AWS AppSync) using Amplify

我在 AWS AppSync 上有一个由另一个人推送的 GraphQL API,我想连接到它并在我的 Android 应用程序中获取数据。根据 AWS 文档,要将 API 与我的应用程序集成,我应该执行以下 3 个命令:

  npm install -g @aws-amplify/cli
  amplify init
  amplify add codegen --apiId xxxxxx

之后,我需要根据 graphql schema 生成 Java 类。我执行 amplify codegen models 但出现错误“ 未配置 AppSync API。请添加 API”。如果执行 amplify add api,我得到“您的项目中已经有一个 AppSync API。使用 "amplify update api" 命令更新您现有的 AppSync API。"

为什么我不能生成 类?

aws-amplify/cli v4.18.1

尝试运行amplify pull在运行amplify codegen models.

之前拉下最新的后端环境

您应该使用 Amplify Mobile SDK 而不是 Amplify Libraries 为在 AWS 控制台中创建的 API 生成 类。您必须使用不同的生成方法确实令人困惑。此外,在 API 概述中的 AWS 上有一个错误的 link,它指的不是移动 SDK,而是库。

在控制台中创建 API 的生成过程在 代码生成/AppSync APIs 在控制台中创建 https://docs.amplify.aws/sdk/api/graphql/q/platform/android#code-generation[ 中进行了描述=12=]