从 10 月 8 日至 10 日加入我们,了解 GraphQL 联合和 API 平台工程的最新窍门、趋势和新闻。加入我们参加 2024 年纽约市 GraphQL 峰会
文档
免费试用

模块


高度模块化,使你可以轻松地仅包含你使用的功能,而排除其他功能,从而保持二进制大小和编译时间缩小。

所有模块均记录在KDoc API 参考

主要模块

apollo-annotations

apollo-annotations是一个非常小的模块,其中包含 @ApolloExperimental和用于主要用于处理 API 生命周期管理的其他注释。

他是其他大部分模块的 API 依赖项。

apollo-api

apollo-api包含编译生成的代码和解析响应的最基本符号。

它不包含任何网络或缓存代码。 有关更完整的工件,请参阅 apollo-runtime

参阅 ``使用不带 apollo-runtime 的模型''以了解如何使用 apollo-api

apollo-ast

apollo-ast包含用于解析 文档并操纵其抽象语法树的代码。

参阅 ``Apollo AST''以了解如何使用 apollo-ast

apollo-compiler

apollo-compiler是 apollo-gradle-plugin 使用的低级编译器 API。

apollo-compiler使用 JavaPoetKotlinPoet根据 GraphQL 生成 Java 和 Kotlin 模型。

apollo-compiler通常通过 Gradle 或 Maven 插件来使用。它还包含 ApolloCompilerPlugin

有关如何开发编译器插件的信息,“Apollo 编译器插件”

apollo-debug-server

apollo-debug-server是一个将你的标准化高速缓存提供给 IntelliJ/Android Studio 插件的服务器。

apollo-gradle-plugin

apollo-gradle-plugin包含 Apollo Gradle 插件。

此模块会隐藏并重新定位其运行时依赖项,以避免类路径问题。在某些情况下,这样做会加大了调试的难度。

有关 apollo-gradle-plugin版本的信息(不隐藏其依赖项),请参阅 apollo-gradle-plugin-external

有关如何使用 Gradle 插件的信息,“Gradle 插件配置”

apollo-gradle-plugin-external

apollo-gradle-plugin-external包含 Apollo Gradle 插件。

此模块不会隐藏其运行时依赖项,因此更容易出现 Gradle 类路径问题。

有关 apollo-gradle-plugin-external版本的信息(隐藏其依赖项),请参阅 apollo-gradle-plugin

有关如何使用 Gradle 插件的信息,“Gradle 插件配置”

apollo-http-cache

apollo-http-cache 是一个用于你的 GraphQL 操作的 HTTP 高速缓存。与普通的 HTTP 高速缓存相比,它还可以高速缓存 POST 请求。

有关如何使用 HTTP 高速缓存的信息,“HTTP 高速缓存”

apollo-normalized-cache

apollo-normalized-cache 包含 ApolloStoreApolloCacheInterceptor。它连接 ApolloClientApolloNormalizedCache

参见 “标准化缓存”了解如何使用标准化缓存。

apollo-normalized-cache-api

apollo-normalized-cache-api是一个底层缓存。它不包含协同程序的任何内容,也不包含 apollo-runtime,并包含 NormalizedCache的内存实现。

大多数情况下,使用 apollo-normalized-cache即可。

参见 “标准化缓存”了解如何使用标准化缓存。

apollo-normalized-cache-sqlite

apollo-normalized-cache-sqlite包含 NormalizedCache的实现,在应用重新启动时,该实现使用 SQLite 来持久保存数据。

参见 “标准化缓存”了解如何使用标准化缓存。

apollo-runtime

apollo-runtime包含 ApolloClient,用于执行查询和 。这是主要入口点。

参见 “入门”了解如何实例化和使用 ApolloClient

apollo-testing-support

apollo-testing-support包含:

  • QueueTestNetworkTransportMapTestNetworkTransport用于在没有模拟服务器的情况进行测试。
  • 用于 Apollo 测试的一组辅助函数。它们原本不打算成为公共内容,将在未来版本中被移除。这些符号已标记为已弃用。如果使用这些符号,请将其复制粘贴到您的项目中。

参见 “模拟 GraphQL 响应”了解如何使用测试网络传输。

已弃用模块

以下模块已弃用,将在将来版本中移除。

apollo-adapters(已弃用)

apollo-adapters包含常见日期和大十进制 GraphQL 的适配器。

此模块已弃用并已迁移至 Apollo Galaxy。有关更多详情,请参阅 Apollo Galaxy 页面

apollo-api-java(已弃用)

apollo-api-java包含编译 Java 模型所需符号。

此模块已弃用并已迁移至 Apollo Galaxy。有关更多详情,请参阅 Apollo Galaxy 页面

apollo-engine-ktor(已弃用)

apollo-engine-ktorHttpEngineWebSocketEngine的实现,它使用 Ktor。

此模块已弃用并已迁移至 Apollo Galaxy。有关更多详情,请参阅 Apollo Galaxy 页面

apollo-idling-resource(已弃用)

apollo-idling-resource包含 Espresso IdlingResource,它监控对 GraphQL API 的调用。

此模块已弃用,因为我们建议您等待 UI 更改。请参阅 这篇有关执行此操作方法的文章

apollo-mockserver(已弃用)

apollo-mockserver是用于测试的 HTTP 服务器。它支持多平台和 Websockets。

该 API 最小,性能不是目标。不要用于生产 API。

此模块已弃用并已迁移至 Apollo Galaxy。有关更多详情,请参阅 Apollo Galaxy 页面

apollo-runtime-java(已弃用)

apollo-runtime-javaApolloClient 的实现,它不使用协程,并且对 Java 调用者来说更友好。

此模块已弃用并已迁移至 Apollo Galaxy。有关更多详情,请参阅 Apollo Galaxy 页面

apollo-rx2-support(已弃用)

apollo-rx2-support 提供围绕 kotlinx-coroutines-rx2 的轻量级包装。

此模块已弃用,将在未来版本中删除。

apollo-rx3-support(已弃用)

apollo-rx3-support 提供围绕 kotlinx-coroutines-rx3 的轻量级包装。

此模块已弃用,将在未来版本中删除。

apollo-rx2-support-java(已弃用)

apollo-rx2-support-java 提供从 ApolloCall 到其 RxJava3 等效项的适配器。

此模块已弃用并已迁移至 Apollo Galaxy。有关更多详情,请参阅 Apollo Galaxy 页面

apollo-rx3-support-java(已弃用)

apollo-rx3-support-java 提供从 ApolloCall 到其 RxJava3 等效项的适配器。

此模块已弃用并已迁移至 Apollo Galaxy。有关更多详情,请参阅 Apollo Galaxy 页面

内部模块

这些模块仅因技术原因而发布。它们的大多数符号都是 @ApolloInternal 并且可能随时被删除。避免使用它们。

apollo-mockserver(内部)

apollo-mpp-utils 包含一些用于处理多平台项目的实用程序。

截至 2024 年 6 月,它只包含 currentTimeMillis。在大多数情况下,我们应该用 kotlin.time.TimeMark 替换它,但在 HttpInfo 中仍然将其用作绝对时间戳,我们暂时还无法删除它。

此模块仅因技术原因而发布。请勿直接使用。

apollo-tooling(内部)

apollo-tooling包含一些 API,用于处理 操作以及 API。它用于 CLI 和 Gradle 插件中

此模块仅因技术原因而发布。请勿直接使用。

上一页
迁移到 v4
下一页
演变策略
评价本文评价在 GitHub 上编辑编辑论坛.css-1r5v3i6{display:-ms-grid;display:grid;grid-gap:var(--chakra-space-6);-ms-grid-columns:repeat(auto-fit, minmax(100px, 1fr));grid-template-columns:repeat(auto-fit, minmax(100px, 1fr));border-top-width:1px;padding:var(--chakra-space-12);}@media screen and (min-width: 48em){.css-1r5v3i6{grid-gap:var(--chakra-space-8);}}

公司