# Expo Documentation > Expo is an open-source React Native framework for apps that run natively on Android, iOS, and the web. Expo brings together the best of mobile and the web and enables many important features for building and scaling an app such as live updates, instantly sharing your app, and web support. The company behind Expo also offers Expo Application Services (EAS), which are deeply integrated cloud services for Expo and React Native apps. ## 开始使用 - [创建一个项目](https://docs.expo.dev/get-started/create-a-project): 了解如何创建一个新的 Expo 项目。 - [设置你的环境](https://docs.expo.dev/get-started/set-up-your-environment): 了解如何设置你的开发环境,以开始使用 Expo 构建。 - [开始开发](https://docs.expo.dev/get-started/start-developing): 对 Expo 项目进行第一次修改,并在你的设备上实时查看效果。 - [下一步](https://docs.expo.dev/get-started/next-steps): 开发、审查并提交你的项目。 ## AI - [Expo AI 代理技能](https://docs.expo.dev/skills): Expo 提供的用于构建、部署和调试 Expo 与 React Native 应用的官方 AI 代理技能列表。 - [AI 代理和 LLM 的文档](https://docs.expo.dev/llms): 供 AI 代理和 LLM 高效访问和使用 Expo 文档的方式。 ## 开发 - [开发工具](https://docs.expo.dev/develop/tools): Expo 工具和网站概览,可在你构建项目旅程的各个方面为你提供帮助。 - [Expo 和 React Native 应用中的导航](https://docs.expo.dev/develop/app-navigation): 了解在 Expo 和 React Native 项目中集成导航的推荐方法。 - [Expo 和 React Native 应用中的数据库](https://docs.expo.dev/develop/database): 了解如何向你的 Expo 项目添加数据库。 - [Expo 和 React Native 应用中的身份验证](https://docs.expo.dev/develop/authentication): 了解如何在你的 Expo 项目中设置身份验证。 - [使用 Jest 进行单元测试](https://docs.expo.dev/develop/unit-testing): 了解如何设置和配置 jest-expo 库,以使用 Jest 为项目编写单元测试和快照测试。 ### 用户界面 - [启动画面和应用图标](https://docs.expo.dev/develop/user-interface/splash-screen-and-app-icon): 了解如何向你的 Expo 项目添加启动画面和应用图标。 - [安全区域](https://docs.expo.dev/develop/user-interface/safe-areas): 了解如何为 Expo 项目中的屏幕组件添加安全区域。 - [系统栏](https://docs.expo.dev/develop/user-interface/system-bars): 了解如何在你的 Expo 项目中处理和自定义系统栏,以实现安全区域和边到边布局。 - [字体](https://docs.expo.dev/develop/user-interface/fonts): 了解如何使用本地文件或 Google 字体包将自定义字体集成到你的应用中 - [资源](https://docs.expo.dev/develop/user-interface/assets): 了解如何在你的项目中使用静态资源,包括图片、视频、声音、数据库文件和字体。 - [颜色主题](https://docs.expo.dev/develop/user-interface/color-themes): 了解如何在你的应用中支持亮色和暗色模式。 - [动画](https://docs.expo.dev/develop/user-interface/animation): 了解如何集成 React Native 动画并在你的 Expo 项目中使用它。 - [存储数据](https://docs.expo.dev/develop/user-interface/store-data): 了解可用于在 Expo 项目中存储数据的不同库。 - [下一步](https://docs.expo.dev/develop/user-interface/next-steps): 一个有用资源列表,帮助你进一步了解如何在应用中实现导航和 UI。 ### 开发构建 - [开发构建简介](https://docs.expo.dev/develop/development-builds/introduction): 为什么使用开发构建以及如何开始。 - [从 Expo Go 切换到开发构建](https://docs.expo.dev/develop/development-builds/expo-go-to-dev-build): 如何将你的 Expo Go 项目切换为使用开发构建。 - [在 EAS 上创建开发构建](https://docs.expo.dev/develop/development-builds/create-a-build): 了解如何为项目创建开发构建。 - [使用开发版本](https://docs.expo.dev/develop/development-builds/use-development-builds): 了解如何为项目使用开发版本。 - [与你的团队共享开发构建](https://docs.expo.dev/develop/development-builds/share-with-your-team): 了解如何安装并与团队共享开发版本,或在多个设备上运行它。 - [工具、工作流和扩展](https://docs.expo.dev/develop/development-builds/development-workflows): 了解在使用开发构建时可用的不同工具、工作流和扩展。 - [下一步](https://docs.expo.dev/develop/development-builds/next-steps): 了解更多关于开发构建和 EAS Build 的有用资源列表。 ### 配置插件 - [配置插件简介](https://docs.expo.dev/config-plugins/introduction): Expo 配置插件简介。 - [创建和使用配置插件](https://docs.expo.dev/config-plugins/plugins): 了解如何在你的 Expo 项目中创建和使用配置插件。 - [Mods](https://docs.expo.dev/config-plugins/mods): 了解 mods 以及在创建配置插件时如何使用它们。 - [使用危险的 mod](https://docs.expo.dev/config-plugins/dangerous-mods): 了解危险的 mod,以及在创建配置插件时如何使用它们。 - [库的插件开发](https://docs.expo.dev/config-plugins/development-for-libraries): 了解如何为 Expo 和 React Native 库开发配置插件。 - [开发和调试插件](https://docs.expo.dev/config-plugins/development-and-debugging): 了解 Expo 配置插件的开发最佳实践和调试技巧。 - [使用 patch-project](https://docs.expo.dev/config-plugins/patch-project): 了解如何使用 patch-project 在你的 Expo 项目中创建、应用并保留原生更改。 ### 调试 - [错误和警告](https://docs.expo.dev/debugging/errors-and-warnings): 了解 Expo 项目中的 Redbox 错误和堆栈跟踪。 - [调试运行时问题](https://docs.expo.dev/debugging/runtime-issues): 了解可用于调试你的 Expo 项目的不同技术。 - [调试与性能分析工具](https://docs.expo.dev/debugging/tools): 了解可用于在运行时检查你的 Expo 项目的不同工具。 - [开发工具插件](https://docs.expo.dev/debugging/devtools-plugins): 了解如何使用开发工具插件来检查和调试你的 Expo 项目。 - [创建一个开发者工具插件](https://docs.expo.dev/debugging/create-devtools-plugins): 了解如何创建一个开发者工具插件,以增强您的开发体验。 ## 评审 - [审核应用分发概览](https://docs.expo.dev/review/overview): 了解如何使用应用商店、内部分发和 EAS Update 来分发您的应用以供审核。 - [与你的团队共享预览](https://docs.expo.dev/review/share-previews-with-your-team): 通过在分支上发布更新,与团队共享应用预览。 - [如何使用 Expo Orbit 启动更新](https://docs.expo.dev/review/with-orbit): 了解如何将 Expo Orbit 作为评审工作流的一部分来打开更新。 ## 发布 - [为应用商店构建你的项目](https://docs.expo.dev/deploy/build-project): 了解如何使用 EAS Build 从命令行创建适用于提交到应用商店的应用生产构建版本。 - [提交到应用商店](https://docs.expo.dev/deploy/submit-to-app-stores): 了解如何使用 EAS Submit 从命令行将你的应用提交到 Google Play 商店和 Apple App Store。 - [应用商店元数据](https://docs.expo.dev/deploy/app-stores-metadata): 关于如何使用 EAS Metadata 来自动化并维护你的应用商店展示信息的简要概述。 - [发送无线更新](https://docs.expo.dev/deploy/send-over-the-air-updates): 了解如何发送无线更新,以向用户推送关键错误修复和改进。 - [发布你的网页应用](https://docs.expo.dev/deploy/web): 了解如何使用 EAS Hosting 部署你的网页应用。 ## 监控 - [监控服务](https://docs.expo.dev/monitoring/services): 了解如何在 Expo 和 React Native 应用发布后监控其使用情况。 ## 更多 - [核心概念](https://docs.expo.dev/core-concepts): Expo 工具、功能和服务概览。 - [常见问题](https://docs.expo.dev/faq): 关于 Expo 及相关服务的常见问题和限制列表。 - [指南:概述](https://docs.expo.dev/guides/overview) ## 开发流程 - [使用 Expo 开发应用](https://docs.expo.dev/workflow/overview): 对构建 Expo 应用的开发流程进行概述,帮助建立核心开发循环的心智模型。 - [使用应用配置进行配置](https://docs.expo.dev/workflow/configuration): 了解 app.json/app.config.js/app.config.ts 文件是什么,以及如何动态自定义和使用它们。 - [持续原生生成(CNG)](https://docs.expo.dev/workflow/continuous-native-generation): 了解如何使用持续原生生成(CNG)和预构建来管理你的原生项目。 - [使用 Expo SDK、React Native 和第三方库](https://docs.expo.dev/workflow/using-libraries): 了解如何在你的项目中使用 Expo SDK、React Native 库以及其他第三方 npm 包。 - [隐私清单](https://docs.expo.dev/guides/apple-privacy): 了解如何为您的移动应用配置 iOS 隐私清单。 - [权限](https://docs.expo.dev/guides/permissions): 了解如何在应用配置文件中配置和添加权限。 - [Expo 中的环境变量](https://docs.expo.dev/guides/environment-variables): 了解如何在 Expo 项目中使用环境变量。 ### 深度链接 - [Linking、Deep Links、Android App Links 和 iOS Universal Links 概览](https://docs.expo.dev/linking/overview): 在你的 Expo 应用中实现 Linking 和 Deep Links 的可用资源概览。 - [链接到其他应用](https://docs.expo.dev/linking/into-other-apps): 了解如何根据另一个应用的 URL scheme 从你的应用中处理并打开一个 URL。 - [链接到你的应用](https://docs.expo.dev/linking/into-your-app): 了解如何通过创建深度链接来处理 React Native 和 Expo 应用中的传入 URL。 - [Android App Links](https://docs.expo.dev/linking/android-app-links): 了解如何配置 Android App Links,以便通过标准网页 URL 打开您的 Expo 应用。 - [iOS 通用链接](https://docs.expo.dev/linking/ios-universal-links): 了解如何配置 iOS 通用链接,以便从标准网页 URL 打开你的 Expo 应用。 ### 编写原生代码 - [添加自定义原生代码](https://docs.expo.dev/workflow/customizing): 了解如何向你的 Expo 项目添加自定义原生代码。 - [采用 Prebuild](https://docs.expo.dev/guides/adopting-prebuild): 了解如何在使用 React Native CLI 引导的项目中采用 Expo Prebuild。 ### 本地构建 - [本地构建:概述](https://docs.expo.dev/guides/local-app-overview): 使用自己的机器为 Expo 项目在本地构建应用的概述。 - [本地创建调试构建](https://docs.expo.dev/guides/local-app-development): 了解如何为你的 Expo 应用在本地创建调试构建。 - [在本地创建发布构建](https://docs.expo.dev/guides/local-app-production): 了解如何为你的 Expo 应用在本地创建发布(生产)构建。 - [使用构建缓存提供程序](https://docs.expo.dev/guides/cache-builds-remotely): 通过从提供程序缓存和复用构建来加速本地开发。 - [Android 的预构建 Expo 模块](https://docs.expo.dev/guides/prebuilt-expo-modules): 了解预构建 Expo 模块如何将你机器上的 Android 构建时间最多缩短 25%。 ### Web - [使用 Expo 开发网站](https://docs.expo.dev/workflow/web): 了解如何为 Web 开发你的应用,以便构建一个通用应用。 - [发布网站](https://docs.expo.dev/guides/publishing-websites): 了解如何将 Expo 网站部署到生产环境。 - [在 Expo 原生应用中使用 React DOM](https://docs.expo.dev/guides/dom-components): 了解如何在 Expo 原生应用中使用 'use dom' 指令渲染 React DOM 组件。 - [渐进式 Web 应用](https://docs.expo.dev/guides/progressive-web-apps): 了解如何为 Expo 网站添加渐进式 Web 应用支持。 - [Tailwind CSS](https://docs.expo.dev/guides/tailwind): 学习如何在你的 Expo 项目中配置和使用 Tailwind CSS。 - [使用本地 HTTPS 开发](https://docs.expo.dev/guides/local-https-development): 了解如何为 Expo Web 应用设置本地 HTTPS。 ### 打包 - [Metro 打包器](https://docs.expo.dev/guides/customizing-metro): 了解可以自定义的不同 Metro 打包器配置。 - [使用 Expo Atlas 和 Lighthouse 分析 JavaScript bundle](https://docs.expo.dev/guides/analyzing-bundles): 了解如何使用 Expo Atlas 和 Lighthouse 提升 Expo 应用和网站的生产环境 JavaScript bundle 大小。 - [Tree shaking 和代码移除](https://docs.expo.dev/guides/tree-shaking): 了解 Expo CLI 如何优化生产环境的 JavaScript bundle。 - [压缩 JavaScript](https://docs.expo.dev/guides/minify): 了解如何在 Expo CLI 中使用 Metro bundler 自定义 JavaScript 压缩流程。 - [为什么选择 Metro?](https://docs.expo.dev/guides/why-metro): 了解为什么 Metro 是 React Native 中通用打包的未来,以及它如何帮助开发者。 ### 参考 - [使用 monorepo 开发](https://docs.expo.dev/guides/monorepos): 了解如何在 monorepo 中使用 workspaces 设置 Expo 项目。 - [查看日志](https://docs.expo.dev/workflow/logging): 了解如何在使用 Expo CLI 时查看日志、在 Android Studio 和 Xcode 中查看原生日志,以及查看系统日志。 - [开发模式与生产模式](https://docs.expo.dev/workflow/development-mode): 了解如何在开发模式或生产模式下运行项目。 - [常见开发错误](https://docs.expo.dev/workflow/common-development-errors): 使用 Expo 的开发者经常遇到的常见开发错误列表。 - [Android Studio 模拟器](https://docs.expo.dev/workflow/android-studio-emulator): 了解如何设置 Android 模拟器,以便在虚拟 Android 设备上测试您的应用。 - [iOS 模拟器](https://docs.expo.dev/workflow/ios-simulator): 了解如何在你的 Mac 上安装 iOS 模拟器,并使用它来开发你的应用。 - [React Native 的新架构](https://docs.expo.dev/guides/new-architecture): 了解 React Native 的“新架构”,以及为何以及如何迁移到它。 - [React 编译器](https://docs.expo.dev/guides/react-compiler): 了解如何在 Expo 应用中启用和使用 React 编译器。 ### 现有 React Native 应用 - [使用 Expo 与现有 React Native 应用的概览](https://docs.expo.dev/bare/overview): 了解如何在现有 React Native 应用中使用 Expo 工具和服务。 - [在现有 React Native 项目中安装 Expo 模块](https://docs.expo.dev/bare/installing-expo-modules): 了解如何准备你的现有 React Native 项目,以安装和使用任何 Expo 模块。 - [从 React Native CLI 迁移到 Expo CLI](https://docs.expo.dev/bare/using-expo-cli): 了解如何将任何 React Native 项目从 React Native CLI(@react-native-community/cli)迁移到 Expo CLI。 - [在现有的 React Native 项目中安装 expo-updates](https://docs.expo.dev/bare/installing-updates): 了解如何在现有的 React Native 项目中安装和配置 expo-updates。 - [在现有 React Native 项目中安装 expo-dev-client](https://docs.expo.dev/bare/install-dev-builds-in-bare): 了解如何在现有 React Native 项目中安装并配置 expo-dev-client。 - [原生项目升级助手](https://docs.expo.dev/bare/upgrade): 查看你需要对原生项目进行的所有更改的逐文件差异,以将它们升级到下一个 Expo SDK 版本。 ### 现有原生应用 - [将 Expo 工具集成到现有原生应用中](https://docs.expo.dev/brownfield/overview): 关于如何将 Expo 工具集成到现有原生应用(“brownfield” 应用)中的概述。 - [如何使用隔离方法将 Expo 添加到原生应用](https://docs.expo.dev/brownfield/isolated-approach): 一份关于将 Expo 和 React Native 作为原生库添加,并使用隔离方法将其集成到现有(brownfield)原生应用中的指南。 - [如何使用集成方式将 Expo 添加到原生应用中](https://docs.expo.dev/brownfield/integrated-approach): 一份使用集成方式将 Expo 和 React Native 添加到现有原生(brownfield)应用中的指南。 - [配置生命周期监听器](https://docs.expo.dev/brownfield/lifecycle-listeners): 了解允许 Expo Modules API 钩入应用生命周期的机制。 ## Expo Router - [Expo Router 简介](https://docs.expo.dev/router/introduction): Expo Router 是一个开源路由库,适用于使用 Expo 构建的 Universal React Native 应用程序。 - [手动安装](https://docs.expo.dev/router/installation): 了解如何通过这些详细说明将 Expo Router 添加到现有项目中。 ### Router 入门 - [Expo Router 中基于文件路由的核心概念](https://docs.expo.dev/router/basics/core-concepts): 了解 Expo Router 的基本规则,以及它与其余代码的关系。 - [Expo Router 标记法](https://docs.expo.dev/router/basics/notation): 了解如何使用特殊文件名和标记,在项目的文件结构中以富有表现力的方式定义应用的导航树。 - [Expo Router 中的导航布局](https://docs.expo.dev/router/basics/navigation-layouts): 了解如何通过使用目录和布局文件来构建页面之间的不同关系。 - [在 Expo Router 中在页面之间导航](https://docs.expo.dev/router/basics/navigation): 了解在 Expo Router 中链接到页面和导航到页面的不同方式。 - [Expo Router 中常见的导航模式](https://docs.expo.dev/router/basics/common-navigation-patterns): 将 Expo Router 基础知识应用于你可以在应用中使用的实际导航模式。 ### 导航模式 - [栈](https://docs.expo.dev/router/advanced/stack): 了解如何在 Expo Router 中使用 Stack 导航器。 - [JavaScript 选项卡](https://docs.expo.dev/router/advanced/tabs): 了解如何在 Expo Router 中使用 JavaScript 选项卡布局(React Navigation 底部选项卡)。 - [原生选项卡](https://docs.expo.dev/router/advanced/native-tabs): 了解如何在 Expo Router 中使用原生选项卡布局。 - [抽屉](https://docs.expo.dev/router/advanced/drawer): 了解如何在 Expo Router 中使用抽屉布局。 - [Expo Router 中的身份验证](https://docs.expo.dev/router/advanced/authentication): 如何使用 Expo Router 实现身份验证并保护路由。 - [使用重定向在 Expo Router 中进行身份验证](https://docs.expo.dev/router/advanced/authentication-rewrites): 如何使用 Expo Router 实现身份验证并保护路由。 - [嵌套导航器](https://docs.expo.dev/router/advanced/nesting-navigators): 了解如何在 Expo Router 中嵌套导航器。 - [模态框](https://docs.expo.dev/router/advanced/modals): 了解如何在 Expo Router 中使用模态框。 - [Web 模态框](https://docs.expo.dev/router/advanced/web-modals): 了解如何使用 Expo Router 在你的 web 应用中实现并自定义模态框的行为。 - [共享路由](https://docs.expo.dev/router/advanced/shared-routes): 了解如何定义共享路由,或使用数组以在不同布局中多次使用同一路由,使用 Expo Router。 - [受保护的路由](https://docs.expo.dev/router/advanced/protected): 了解如何使屏幕无法通过客户端导航访问。 ### Advanced - [特定于平台的扩展和模块](https://docs.expo.dev/router/advanced/platform-specific-modules): 学习如何在 Expo Router 中使用特定于平台的扩展以及来自 React Native 的 Platform 模块,根据平台切换模块。 - [自定义链接](https://docs.expo.dev/router/advanced/native-intent): 了解在使用 Expo Router 时如何通过 +native-intent 进行链接重定向并使用第三方深度链接。 - [路由设置](https://docs.expo.dev/router/advanced/router-settings): 了解如何在 Expo Router 中使用静态属性配置布局。 - [Apple Handoff](https://docs.expo.dev/router/advanced/apple-handoff): 了解如何使用 Expo Router 和 Apple Handoff 在 Apple 设备之间无缝继续应用导航。 - [自定义标签页布局](https://docs.expo.dev/router/advanced/custom-tabs): 了解如何使用无头标签页组件在 Expo Router 中创建自定义标签页布局。 - [堆栈工具栏](https://docs.expo.dev/router/advanced/stack-toolbar): 了解如何在 Stack 导航中使用 Expo Router 的 iOS 工具栏。 - [缩放过渡](https://docs.expo.dev/router/advanced/zoom-transition): 了解如何使用缩放过渡,在使用 Expo Router for iOS 时创建屏幕之间的流畅动画。 ### Web - [API 路由](https://docs.expo.dev/router/web/api-routes): 了解如何使用 Expo Router 创建服务器端点。 - [数据加载器](https://docs.expo.dev/router/web/data-loaders): 了解如何使用 Expo Router 中的数据加载器在服务器上获取数据。 - [服务器中间件](https://docs.expo.dev/router/web/middleware): 了解如何创建在 Expo Router 中对服务器的每个请求都运行的中间件。 - [服务器标头](https://docs.expo.dev/router/web/server-headers): 了解如何为 Expo Router 中的所有服务器路由响应设置自定义 HTTP 标头。 - [静态渲染](https://docs.expo.dev/router/web/static-rendering): 了解如何使用 Expo Router 将路由渲染为静态 HTML 和 CSS 文件。 - [服务器渲染](https://docs.expo.dev/router/web/server-rendering): 了解如何使用服务器端渲染(SSR)在请求时动态渲染 Expo Router 路由。 - [异步路由](https://docs.expo.dev/router/web/async-routes): 了解如何通过 Expo Router 中的异步打包来加快开发速度。 ### 参考 - [错误处理](https://docs.expo.dev/router/error-handling): 了解在使用 Expo Router 时,如何在应用中处理未匹配的路由和错误。 - [使用 URL 参数](https://docs.expo.dev/router/reference/url-parameters): 了解如何在你的应用中访问和修改路由参数和搜索参数。 - [颜色](https://docs.expo.dev/router/reference/color): 在 Expo Router 中以类型安全的方式访问平台特定颜色。 - [站点地图](https://docs.expo.dev/router/reference/sitemap): 了解如何使用站点地图来调试你的应用,适用于 Expo Router。 - [重定向](https://docs.expo.dev/router/reference/redirects): 了解如何在 Expo Router 中重定向 URL。 - [链接预览](https://docs.expo.dev/router/reference/link-preview): 了解在使用 Expo Router 时,如何在 iOS 上为你的链接添加预览。 - [类型化路由](https://docs.expo.dev/router/reference/typed-routes): 了解如何在 Expo Router 中使用静态类型化的链接和路由。 - [用于分析的屏幕跟踪](https://docs.expo.dev/router/reference/screen-tracking): 了解在使用 Expo Router 时如何启用分析的屏幕跟踪。 - [顶层 src 目录](https://docs.expo.dev/router/reference/src-directory): 了解如何在你的 Expo Router 项目中使用顶层 src 目录。 - [Expo Router 的测试配置](https://docs.expo.dev/router/reference/testing): 了解在使用 Expo Router 时如何为你的应用创建集成测试。 - [故障排除](https://docs.expo.dev/router/reference/troubleshooting): 修复 Expo Router 设置中的常见问题。 - [保留路径](https://docs.expo.dev/router/reference/reserved-paths): Metro 和 Expo Router 保留的 URL 路径,你应避免将其用于路由或静态文件。 ### Migration - [从 React Navigation 迁移](https://docs.expo.dev/router/migrate/from-react-navigation): 了解如何将使用 React Navigation 的项目迁移到 Expo Router。 - [从 Expo Webpack 迁移](https://docs.expo.dev/router/migrate/from-expo-webpack): 了解如何将使用 Expo Webpack 的网站迁移到 Expo Router。 ## Expo Modules API - [Expo Modules API:概述](https://docs.expo.dev/modules/overview): Expo 提供用于开发原生模块的 API 和工具的概述。 - [Expo Modules API:入门](https://docs.expo.dev/modules/get-started): 了解如何开始使用 Expo Modules API。 ### Tutorials - [教程:创建一个原生模块](https://docs.expo.dev/modules/native-module-tutorial): 使用 Expo Modules API 创建一个可持久化设置的原生模块教程。 - [教程:创建原生视图](https://docs.expo.dev/modules/native-view-tutorial): 一份关于使用 Expo Modules API 创建原生视图并渲染 WebView 的教程。 - [教程:创建内联模块](https://docs.expo.dev/modules/inline-modules-tutorial): 通过内联模块在你的 Expo 项目中直接创建原生模块和视图的教程。 - [教程:创建带有配置插件的模块](https://docs.expo.dev/modules/config-plugin-and-native-module-tutorial): 使用 Expo Modules API 创建原生模块和配置插件的教程。 - [如何使用独立的 Expo 模块](https://docs.expo.dev/modules/use-standalone-expo-module-in-your-project): 了解如何在你的项目中使用通过 create-expo-module 创建的独立模块,方法是使用 monorepo 或将包发布到 npm。 - [包装第三方原生库](https://docs.expo.dev/modules/third-party-library): 了解如何使用 Expo Modules API 围绕两个独立的原生库创建一个简单的包装器。 - [集成到现有库中](https://docs.expo.dev/modules/existing-library): 了解如何将 Expo Modules API 集成到现有的 React Native 库中。 - [额外的平台支持](https://docs.expo.dev/modules/additional-platform-support): 了解如何为 macOS 和 tvOS 平台添加支持。 ### 参考 - [模块 API 参考](https://docs.expo.dev/modules/module-api): Expo 模块 API 的 API 参考。 - [内联模块参考](https://docs.expo.dev/modules/inline-modules-reference): Expo 内联模块的参考文档。 - [Android 生命周期监听器](https://docs.expo.dev/modules/android-lifecycle-listeners): 了解一种机制,该机制允许你的库使用 Expo 模块 API 挂钩到 Android Activity 和 Application 函数。 - [iOS AppDelegate 订阅者](https://docs.expo.dev/modules/appdelegate-subscribers): 了解如何使用 Expo modules API 订阅与应用相关的 iOS 系统事件,例如入站链接和通知。 - [自动链接](https://docs.expo.dev/modules/autolinking): 了解如何使用 Expo 自动链接在你的 Expo 项目中自动链接原生依赖。 - [使用共享对象](https://docs.expo.dev/modules/shared-objects): 了解如何使用 Expo Modules API 中的共享对象。 - [expo-module.config.json](https://docs.expo.dev/modules/module-config): 了解 expo-module.config.json 中可用的不同配置选项。 - [在 Expo 模块中模拟原生调用](https://docs.expo.dev/modules/mocking): 了解如何在 Expo 模块中模拟原生调用。 - [Expo Modules API: 设计考量](https://docs.expo.dev/modules/design): Expo Modules API 背后设计考量的概述。 ## 推送通知 - [Expo 推送通知:概览](https://docs.expo.dev/push-notifications/overview): Expo 推送通知服务概述。 - [你需要了解的通知](https://docs.expo.dev/push-notifications/what-you-need-to-know): 在开始之前,了解通知类型及其行为。 - [Expo 推送通知设置](https://docs.expo.dev/push-notifications/push-notifications-setup): 了解如何设置推送通知、获取开发和生产环境的凭据,以及发送测试推送通知。 - [使用 Expo Push 服务发送通知](https://docs.expo.dev/push-notifications/sending-notifications): 了解如何调用 Expo Push Service API 从您的服务器发送推送通知。 - [处理传入通知](https://docs.expo.dev/push-notifications/receiving-notifications): 了解如何响应应用收到的通知,并根据事件采取操作。 ### Reference - [使用 FCM V1 获取 Google 服务账号密钥](https://docs.expo.dev/push-notifications/fcm-credentials): 了解如何创建或使用 Google 服务账号密钥,以便使用 FCM 发送 Android 通知。 - [使用 FCM 和 APNs 发送通知](https://docs.expo.dev/push-notifications/sending-notifications-custom): 了解如何使用 FCM 和 APNs 发送通知。 - [推送通知故障排查和常见问题解答](https://docs.expo.dev/push-notifications/faq): 关于 Expo 推送通知服务的常见问题汇总。 ## 集成 ### 分析与错误报告 - [React Native 分析 SDK 和库](https://docs.expo.dev/guides/using-analytics): Expo 和 React Native 生态系统中可用的分析服务概览。 - [使用 Sentry](https://docs.expo.dev/guides/using-sentry): 安装和配置 Sentry 以进行崩溃报告的指南。 - [使用 BugSnag](https://docs.expo.dev/guides/using-bugsnag): 关于安装和配置 BugSnag 以实现端到端错误报告和分析的指南。 - [使用 LogRocket](https://docs.expo.dev/guides/using-logrocket): 一份关于安装和配置 LogRocket 以进行会话回放和错误监控的指南。 - [使用 Vexo](https://docs.expo.dev/guides/using-vexo): 关于安装和配置 Vexo 以实现实时用户分析的指南。 ### 认证 - [使用认证 SDK 和库](https://docs.expo.dev/guides/using-authentication): Expo 和 React Native 生态系统中可用的认证集成概览。 - [使用 Clerk](https://docs.expo.dev/guides/using-clerk): 了解如何在你的 Expo 和 React Native 项目中集成 Clerk 身份验证。 - [使用 Facebook 身份验证](https://docs.expo.dev/guides/facebook-authentication): 关于在 Expo 项目中使用 react-native-fbsdk-next 库集成 Facebook 身份验证的指南。 - [使用 Google 身份验证](https://docs.expo.dev/guides/google-authentication): 一份关于如何使用 @react-native-google-signin/google-signin 库将 Google 身份验证集成到你的 Expo 项目中的指南。 ### CMS - [使用内容管理系统(CMS)](https://docs.expo.dev/guides/using-a-cms): Expo 和 React Native 生态系统中可用的内容管理系统(CMS)概述。 ### 数据库与 SDK - [使用 Convex](https://docs.expo.dev/guides/using-convex): 使用 Convex 为你的应用添加数据库。 - [使用 Firebase](https://docs.expo.dev/guides/using-firebase): 一份关于开始使用 Firebase JS SDK 和 React Native Firebase 库的指南。 - [使用 Supabase](https://docs.expo.dev/guides/using-supabase): 使用 Supabase 为你的 React Native 应用添加 Postgres 数据库和用户认证。 ### 邮件 - [使用 Resend](https://docs.expo.dev/guides/using-resend): 了解如何在 Expo 和 React Native 应用中集成 Resend,以通过 Expo Router 的 API 路由以编程方式发送电子邮件。 ### 功能开关 - [React Native 功能标志服务](https://docs.expo.dev/guides/using-feature-flags): Expo 和 React Native 生态系统中可用的功能标志服务概述。 ### 应用内购买 - [使用应用内购买](https://docs.expo.dev/guides/in-app-purchases): 了解如何在你的 Expo 应用中使用应用内购买。 ### 推送通知 - [使用推送通知](https://docs.expo.dev/guides/using-push-notifications-services): 了解与 Expo 和 React Native 应用兼容的推送通知服务。 ### 工具 - [使用 ESLint 和 Prettier](https://docs.expo.dev/guides/using-eslint): 配置 ESLint 和 Prettier 以格式化 Expo 应用的指南。 - [使用 TypeScript](https://docs.expo.dev/guides/typescript): 关于为 Expo 项目配置 TypeScript 的深入指南。 ### TV 应用 - [构建用于电视的 Expo 应用](https://docs.expo.dev/guides/building-for-tv): 一份用于构建面向 Android TV 或 Apple TV 目标的 Expo 应用的指南。 ### Web 应用 - [将 Next.js 与 Expo 一起用于 Web](https://docs.expo.dev/guides/using-nextjs): 将 Next.js 与 Expo 集成用于 Web 的指南。 ## 更多 - [升级 Expo SDK](https://docs.expo.dev/workflow/upgrading-expo-sdk-walkthrough): 了解如何在你的项目中逐步升级 Expo SDK 版本。 ### 杂项 - [使用 OAuth 或 OpenID 提供商进行身份验证](https://docs.expo.dev/guides/authentication): 了解如何利用 expo-auth-session 库来实现与 OAuth 或 OpenID 提供商的身份验证。 - [使用 Hermes 引擎](https://docs.expo.dev/guides/using-hermes): 在 Expo 项目中配置适用于 Android 和 iOS 的 Hermes 指南。 - [iOS 开发者模式](https://docs.expo.dev/guides/ios-developer-mode): 了解如何在 iOS 16 及以上版本中启用 iOS 开发者模式设置,以运行内部发布版本和本地开发版本。 - [Expo 矢量图标](https://docs.expo.dev/guides/icons): 了解如何在你的 Expo 应用中使用各种类型的图标,包括 react native vector icons、自定义图标字体、图标图片和图标按钮。 - [本地化](https://docs.expo.dev/guides/localization): 了解如何在 Expo 项目中使用 expo-localization 开始并配置本地化。 - [配置 JS 引擎](https://docs.expo.dev/guides/configuring-js-engines): 一份关于在 Expo 项目中为 Android 和 iOS 配置 JS 引擎的指南。 - [使用 Bun](https://docs.expo.dev/guides/using-bun): 关于在 Expo 和 EAS 中使用 Bun 的指南。 - [编辑富文本](https://docs.expo.dev/guides/editing-richtext): 了解在 React Native 中预览和编辑富文本的当前方法。 - [创建应用商店素材](https://docs.expo.dev/guides/store-assets): 了解如何为你的应用商店页面创建截图和预览。 - [使用 Expo 的本地优先架构](https://docs.expo.dev/guides/local-first): 对新兴的本地优先软件运动的介绍,包括相关学习资源和工具的链接。 - [键盘处理](https://docs.expo.dev/guides/keyboard-handling): 在 Android 或 iOS 设备上处理常见键盘交互的指南。 ### Expo UI - [Building SwiftUI apps with Expo UI](https://docs.expo.dev/guides/expo-ui-swift-ui): Learn how to use Expo UI to integrate SwiftUI into your Expo apps. - [使用 SwiftUI 扩展](https://docs.expo.dev/guides/expo-ui-swift-ui/extending): 了解如何创建可与 Expo UI 集成的自定义 SwiftUI 组件和修饰符。 ### 故障排查 - [故障排除概览](https://docs.expo.dev/troubleshooting/overview): 使用 Expo 和 EAS 进行应用开发的故障排除指南概览。 - ["应用尚未注册" 错误](https://docs.expo.dev/troubleshooting/application-has-not-been-registered): 了解 “应用尚未注册” 错误的含义,以及如何在 Expo 或 React Native 应用中解决它。 - [在 macOS 和 Linux 上清除 bundler 缓存](https://docs.expo.dev/troubleshooting/clear-cache-macos-linux): 了解在 macOS 和 Linux 上使用 Yarn 或 npm 搭配 Expo CLI 或 React Native CLI 时,如何清除 bundler 缓存。 - [清除 Windows 上的 bundler 缓存](https://docs.expo.dev/troubleshooting/clear-cache-windows): 了解在 Windows 上使用 Expo CLI 或 React Native CLI 时,如何清除 Yarn 或 npm 的 bundler 缓存。 - ["React Native 版本不匹配" 错误](https://docs.expo.dev/troubleshooting/react-native-version-mismatch): 了解 React Native 版本不匹配的含义,以及如何在 Expo 或 React Native 应用中解决它。 - [代理故障排查](https://docs.expo.dev/troubleshooting/proxies): 了解如何使用一组推荐工具来排查代理问题。 ## Regulatory compliance - [数据与隐私保护](https://docs.expo.dev/regulatory-compliance/data-and-privacy-protection): Expo 提供的数据与隐私保护政策概述。 - [GDPR 合规与 Expo](https://docs.expo.dev/regulatory-compliance/gdpr): 了解使用 Expo 构建的应用如何符合 GDPR 合规要求。 - [HIPAA 合规性和 Expo](https://docs.expo.dev/regulatory-compliance/hipaa): 了解使用 Expo 构建的应用程序如何符合 HIPAA 合规要求。 - [教程和 UI 指南概览](https://docs.expo.dev/tutorial/overview) ## Expo tutorial - [教程:使用 React Native 和 Expo](https://docs.expo.dev/tutorial/introduction): 使用 Expo 构建一个可在 Android、iOS 和 Web 上运行的通用应用的 React Native 教程介绍。 - [创建你的第一个应用](https://docs.expo.dev/tutorial/create-your-first-app): 在本章中,学习如何创建一个新的 Expo 项目。 - [添加导航](https://docs.expo.dev/tutorial/add-navigation): 在本章中,学习如何向 Expo 应用添加导航。 - [构建一个屏幕](https://docs.expo.dev/tutorial/build-a-screen): 在本教程中,学习如何使用诸如 React Native 的 Pressable 和 Expo Image 等组件来构建一个屏幕。 - [使用图片选择器](https://docs.expo.dev/tutorial/image-picker): 在本教程中,学习如何使用 Expo Image Picker。 - [创建一个模态框](https://docs.expo.dev/tutorial/create-a-modal): 在本教程中,学习如何创建一个用于选择图片的 React Native 模态框。 - [添加手势](https://docs.expo.dev/tutorial/gestures): 在本教程中,了解如何实现来自 React Native Gesture Handler 和 Reanimated 库的手势。 - [截图](https://docs.expo.dev/tutorial/screenshot): 在本教程中,学习如何使用第三方库和 Expo Media Library 捕获屏幕截图。 - [处理平台差异](https://docs.expo.dev/tutorial/platform-differences): 在本教程中,学习在创建通用应用时如何处理原生和 Web 之间的平台差异。 - [配置状态栏、启动画面和应用图标](https://docs.expo.dev/tutorial/configuration): 在本教程中,了解如何配置状态栏、应用图标和启动画面的基础知识。 - [学习资源](https://docs.expo.dev/tutorial/follow-up): 浏览一份精选资源列表,了解 Expo 和 React Native。 ## EAS tutorial - [EAS 教程:简介](https://docs.expo.dev/tutorial/eas/introduction): 使用 Expo Application Services (EAS) 为 Android 和 iOS 构建应用的教程介绍,涵盖 Build、Update 和 Submit 工作流。 - [在云端配置开发构建](https://docs.expo.dev/tutorial/eas/configure-development-build): 了解如何使用 EAS Build 为项目配置开发构建。 - [创建并运行 Android 的云端构建](https://docs.expo.dev/tutorial/eas/android-development-build): 了解如何使用 EAS Build 为 Android 设备和模拟器配置开发构建。 - [为 iOS 模拟器创建并运行云构建](https://docs.expo.dev/tutorial/eas/ios-development-build-for-simulators): 了解如何使用 EAS Build 为 iOS 模拟器配置开发构建。 - [为 iOS 设备创建并运行云构建](https://docs.expo.dev/tutorial/eas/ios-development-build-for-devices): 了解如何使用 EAS Build 为 iOS 设备配置开发构建。 - [配置多个应用变体](https://docs.expo.dev/tutorial/eas/multiple-app-variants): 了解如何配置动态应用配置,以便在一台设备上安装多个应用变体。 - [创建和分享内部分发构建](https://docs.expo.dev/tutorial/eas/internal-distribution-builds): 了解内部发布构建、我们为什么需要它们,以及如何创建它们。 - [管理不同的应用版本](https://docs.expo.dev/tutorial/eas/manage-app-versions): 了解面向开发者和面向用户的应用版本,以及 EAS Build 如何自动管理面向开发者的版本。 - [为 Android 创建生产构建](https://docs.expo.dev/tutorial/eas/android-production-build): 了解为 Android 创建生产构建以及自动化发布流程的过程。 - [为 iOS 创建生产构建](https://docs.expo.dev/tutorial/eas/ios-production-build): 了解为 iOS 创建生产构建以及自动化发布流程的过程。 - [与你的团队分享预览](https://docs.expo.dev/tutorial/eas/team-development): 了解如何使用 EAS Update 发送 OTA 更新并与团队共享预览。 - [从 GitHub 仓库触发构建](https://docs.expo.dev/tutorial/eas/using-github): 了解从 GitHub 仓库触发构建的流程。 - [后续步骤](https://docs.expo.dev/tutorial/eas/next-steps): 了解你在使用 EAS 过程中的后续步骤。 ## 更多 - [额外资源](https://docs.expo.dev/additional-resources): 一个有助于了解 Expo 工具和服务的资源参考。 - [Expo 应用服务](https://docs.expo.dev/eas): 了解适用于 Expo 和 React Native 应用的 Expo 应用服务(EAS)。 - [使用 eas.json 进行配置](https://docs.expo.dev/eas/json): 了解用于 EAS Build 和 EAS Submit 的可用属性,以便在项目中配置并覆盖其默认行为。 - [EAS CLI 参考](https://docs.expo.dev/eas/cli): EAS CLI 是一个命令行工具,可让你通过终端与 Expo Application Services(EAS)进行交互。 ### Environment variables - [EAS 中的环境变量](https://docs.expo.dev/eas/environment-variables): 关于如何在构建、更新和工作流中使用 Expo Application Services (EAS) 环境变量的概述。 - [在 EAS 中创建和管理环境变量](https://docs.expo.dev/eas/environment-variables/manage): 了解如何使用 EAS 仪表板和 EAS CLI 创建、作用域化和使用环境变量。 - [在 EAS 中使用环境变量](https://docs.expo.dev/eas/environment-variables/usage): 了解如何在 EAS 构建、更新、托管和工作流作业中使用环境变量。 - [不使用 EAS 使用环境变量](https://docs.expo.dev/eas/environment-variables/without-eas): 了解在 Expo 和 React Native 项目中管理环境变量的非 EAS 方法。 - [EAS 中关于环境变量的常见问题](https://docs.expo.dev/eas/environment-variables/faq): 关于 EAS 中环境变量的常见问题。 ## AI - [使用 Model Context Protocol(MCP)与 Expo](https://docs.expo.dev/eas/ai/mcp): 一份关于将 Model Context Protocol 与 Expo 项目集成以增强 AI 模型能力的指南。 ## EAS Workflows - [EAS Workflows 简介](https://docs.expo.dev/eas/workflows/introduction): EAS Workflows 是一项用于自动化 React Native 和 Expo 应用的构建、更新、提交和测试的 CI/CD 服务。 - [开始使用 EAS Workflows](https://docs.expo.dev/eas/workflows/get-started): 了解如何使用 EAS Workflows 自动化你的 React Native CI/CD 开发和发布流程。 - [EAS Workflows 中的预打包作业](https://docs.expo.dev/eas/workflows/pre-packaged-jobs): 了解如何在 EAS Workflows 中设置和使用预打包作业。 - [EAS Workflows 语法](https://docs.expo.dev/eas/workflows/syntax): EAS Workflows 配置文件语法参考指南。 - [自动化 EAS CLI 命令](https://docs.expo.dev/eas/workflows/automating-eas-cli): 了解如何使用 EAS Workflows 自动执行一系列 EAS CLI 命令。 - [EAS 工作流限制](https://docs.expo.dev/eas/workflows/limitations): 了解 EAS Workflows 当前的限制。 ### Examples - [EAS 工作流示例](https://docs.expo.dev/eas/workflows/examples/introduction): 用于开发、审查和发布你的应用的常见 React Native CI/CD 工作流。 - [使用 EAS Workflows 创建开发构建](https://docs.expo.dev/eas/workflows/examples/create-development-builds): 了解如何使用 EAS Workflows 创建开发构建。 - [使用 EAS Workflows 发布预览更新](https://docs.expo.dev/eas/workflows/examples/publish-preview-update): 了解如何使用 EAS Workflows 发布预览更新。 - [使用 EAS Workflows 部署到生产环境](https://docs.expo.dev/eas/workflows/examples/deploy-to-production): 了解如何使用 EAS Workflows 部署到生产环境。 - [使用 Maestro 在 EAS Workflows 上运行 E2E 测试](https://docs.expo.dev/eas/workflows/examples/e2e-tests): 了解如何使用 Maestro 在 EAS Workflows 上设置并运行 E2E 测试。 ## EAS Build - [EAS Build](https://docs.expo.dev/build/introduction): EAS Build 是一个托管服务,用于为你的 Expo 和 React Native 项目构建应用二进制文件。 - [创建你的第一个构建](https://docs.expo.dev/build/setup): 了解如何使用 EAS Build 为你的应用创建构建。 - [使用 eas.json 配置 EAS Build](https://docs.expo.dev/build/eas-json): 了解如何使用 eas.json 配置使用 EAS 服务的项目。 - [内部分发](https://docs.expo.dev/build/internal-distribution): 了解 EAS Build 如何为你的构建提供可共享的 URL,以便与你的团队进行内部分发。 - [自动提交](https://docs.expo.dev/build/automate-submissions): 了解如何使用 EAS Build 启用自动提交。 - [使用 EAS Update](https://docs.expo.dev/build/updates): 了解如何将 EAS Update 与 EAS Build 一起使用。 - [从 CI 触发构建](https://docs.expo.dev/build/building-on-ci): 了解如何在 EAS 上从 CI 环境(例如 GitHub Actions 等)为你的应用触发构建。 - [使用 Expo GitHub App 触发构建](https://docs.expo.dev/build/building-from-github): 了解如何使用 Expo GitHub App 为你的应用在 EAS 上触发构建。 - [Expo Orbit](https://docs.expo.dev/build/orbit): 通过一键启动构建和更新以及模拟器管理,加快您的开发工作流程。 ### App signing - [App 凭据](https://docs.expo.dev/app-signing/app-credentials): 了解 Android 和 iOS 需要哪些 app 凭据。 - [使用自动管理的凭证](https://docs.expo.dev/app-signing/managed-credentials): 了解如何使用 EAS 自动管理您的应用凭证。 - [使用本地凭据](https://docs.expo.dev/app-signing/local-credentials): 了解在使用 EAS 时如何配置和使用本地凭据。 - [使用现有凭据](https://docs.expo.dev/app-signing/existing-credentials): 了解为 EAS Build 提供应用签名凭据的不同选项。 - [在远程和本地来源之间同步凭据](https://docs.expo.dev/app-signing/syncing-credentials): 了解如何在远程和本地来源之间同步凭据。 - [安全](https://docs.expo.dev/app-signing/security): 了解在使用 EAS 时如何处理凭证和其他敏感数据。 - [Apple Developer Program 角色和权限,适用于 EAS Build](https://docs.expo.dev/app-signing/apple-developer-program-roles-and-permissions): 了解创建 EAS Build 所需的 Apple Developer 账户成员资格要求。 ### Custom builds - [开始使用自定义构建](https://docs.expo.dev/custom-builds/get-started): 了解如何使用自定义构建扩展 EAS Build。 - [自定义构建配置 schema](https://docs.expo.dev/custom-builds/schema): EAS Build 自定义构建的配置选项参考。 - [TypeScript 函数](https://docs.expo.dev/custom-builds/functions): 了解如何在自定义构建配置中创建和使用 EAS Build 函数。 ### Reference - [构建生命周期钩子](https://docs.expo.dev/build-reference/npm-hooks): 了解如何使用 EAS Build 生命周期钩子与 npm 来自定义你的构建流程。 - [使用私有 npm 包](https://docs.expo.dev/build-reference/private-npm-packages): 了解如何配置 EAS Build 以使用私有 npm 包。 - [使用 Git 子模块](https://docs.expo.dev/build-reference/git-submodules): 了解如何配置 EAS Build 以使用 git 子模块。 - [使用 Yarn 1(Classic)中的 npm 缓存](https://docs.expo.dev/build-reference/npm-cache-with-yarn): 了解如何通过在 Yarn 1(Classic)中覆盖 registry 来使用 npm 缓存。 - [在 monorepo 中设置 EAS Build](https://docs.expo.dev/build-reference/build-with-monorepos): 了解如何在 monorepo 中设置 EAS Build。 - [为 Android 模拟器和设备构建 APK](https://docs.expo.dev/build-reference/apk): 了解在使用 EAS Build 时如何为 Android 模拟器和设备配置并安装 .apk。 - [为 iOS 模拟器构建](https://docs.expo.dev/build-reference/simulators): 了解在使用 EAS Build 时如何配置并安装用于 iOS 模拟器的构建。 - [应用版本管理](https://docs.expo.dev/build-reference/app-versions): 了解不同的版本类型,以及如何远程或本地管理它们。 - [排查构建错误和崩溃](https://docs.expo.dev/build-reference/troubleshooting): 使用 EAS Build 时排查构建错误和崩溃的参考指南。 - [在同一设备上安装应用变体](https://docs.expo.dev/build-reference/variants): 了解如何在同一设备上安装应用的多个变体。 - [iOS 能力](https://docs.expo.dev/build-reference/ios-capabilities): 了解 EAS Build 支持的内置 iOS 能力,以及如何启用或禁用它们。 - [使用本地标志在本地运行 EAS Build](https://docs.expo.dev/build-reference/local-builds): 了解如何使用 --local 标志在你的机器或自定义基础设施上本地使用 EAS Build。 - [缓存依赖项](https://docs.expo.dev/build-reference/caching): 了解如何通过缓存依赖项来加速构建。 - [Android build process](https://docs.expo.dev/build-reference/android-builds): 了解 Android 项目如何在 EAS Build 上构建。 - [iOS 构建流程](https://docs.expo.dev/build-reference/ios-builds): 了解 iOS 项目如何在 EAS Build 上构建。 - [构建配置流程](https://docs.expo.dev/build-reference/build-configuration): 了解 EAS CLI 如何为 EAS Build 配置项目。 - [构建服务器基础设施](https://docs.expo.dev/build-reference/infrastructure): 了解使用 EAS 时当前的构建服务器基础设施。 - [iOS App 扩展](https://docs.expo.dev/build-reference/app-extensions): 了解如何使用 EAS Build 通过应用扩展添加自定义功能。 - [通过 .easignore 忽略文件](https://docs.expo.dev/build-reference/easignore): 了解如何配置 EAS 在构建过程中忽略不必要的文件。 - [npx testflight 命令](https://docs.expo.dev/build-reference/npx-testflight): 一个可让你构建、签名并将你的 iOS 应用提交到 TestFlight 的单条命令。 - [Repack app](https://docs.expo.dev/build-reference/repack): 使用更新后的 JavaScript bundle 重新打包现有的 APK、IPA 或 .app,而无需进行完整的原生重建。 - [EAS Build 限制](https://docs.expo.dev/build-reference/limitations): 了解 EAS Build 当前的限制。 ## EAS 提交 - [EAS 提交](https://docs.expo.dev/submit/introduction): EAS Submit 是一项托管服务,可通过命令行将 Android 和 iOS 应用二进制文件提交到 Google Play 商店和 Apple App Store。 - [提交到 Google Play 商店](https://docs.expo.dev/submit/android): 了解如何从你的电脑和 CI/CD 服务将应用提交到 Google Play 商店。 - [提交到 Apple App Store](https://docs.expo.dev/submit/ios): 了解如何从您的计算机和 CI/CD 服务将应用提交到 Apple App Store。 - [使用 eas.json 配置 EAS Submit](https://docs.expo.dev/submit/eas-json): 了解如何使用 eas.json 为 EAS Submit 配置你的项目。 ## EAS 托管 - [EAS Hosting 简介](https://docs.expo.dev/eas/hosting/introduction): EAS Hosting 是一项用于快速部署使用 Expo Router 库和 React Native web 构建的 web 项目的服务。 - [部署你的第一个 Expo Router 和 React 应用](https://docs.expo.dev/eas/hosting/get-started): 了解如何将你的 Expo Router 和 React 应用部署到 EAS Hosting。 - [分配别名并提升到生产环境](https://docs.expo.dev/eas/hosting/deployments-and-aliases): 了解部署 URL 以及如何设置别名。 - [自定义域名](https://docs.expo.dev/eas/hosting/custom-domain): 为你的生产部署设置自定义域名。 - [API 路由](https://docs.expo.dev/eas/hosting/api-routes): 了解如何在 EAS Hosting 仪表板上检查来自 API 路由的请求。 - [使用 EAS Workflows 进行 Web 部署](https://docs.expo.dev/eas/hosting/workflows): 了解如何使用 EAS Hosting 和 Workflows 自动化网站和服务器部署。 ### 参考 - [EAS Hosting 部署中的缓存](https://docs.expo.dev/eas/hosting/reference/caching): 了解 EAS Hosting 中缓存的工作方式。 - [默认响应和头部](https://docs.expo.dev/eas/hosting/reference/responses-and-headers): 使用 EAS Hosting 时,系统会自动添加到请求中的默认值。 - [EAS Hosting worker 运行时](https://docs.expo.dev/eas/hosting/reference/worker-runtime): 了解 EAS Hosting worker 运行时和 Node.js 兼容性。 ## EAS 更新 - [EAS 更新](https://docs.expo.dev/eas-update/introduction): EAS Update 是一项云服务,为使用 expo-updates 库的项目提供更新。 - [开始使用 EAS Update](https://docs.expo.dev/eas-update/getting-started): 了解如何开始进行在项目中配置和使用 EAS Update 所需的设置。 ### 预览 - [预览更新](https://docs.expo.dev/eas-update/preview): 了解如何在开发、预览和生产构建中预览更新。 - [运行时覆盖更新配置](https://docs.expo.dev/eas-update/override): 了解如何在运行时覆盖更新 URL 和请求头,以控制客户端加载哪个更新。 - [预览开发构建中的更新](https://docs.expo.dev/eas-update/expo-dev-client): 了解如何使用 expo-dev-client 库在开发构建中预览已发布的 EAS Update。 - [GitHub Action 用于 PR 预览](https://docs.expo.dev/eas-update/github-actions): 了解如何使用 GitHub Actions 自动发布带有 EAS Update 的更新。 ### 部署 - [部署更新](https://docs.expo.dev/eas-update/deployment): 了解一种简单但强大的流程,可安全地将更新部署给你的用户。 - [下载更新](https://docs.expo.dev/eas-update/download-updates): 了解下载和启动更新的策略。 - [发布](https://docs.expo.dev/eas-update/rollouts): 了解如何通过使用发布机制逐步向用户部署更新。 - [回滚](https://docs.expo.dev/eas-update/rollbacks): 将分支回滚到之前的更新或内置更新。 - [EAS Update 的 bundle diff](https://docs.expo.dev/eas-update/bundle-diffing): 使你的项目在可用时接受 bundle diff。 - [优化 EAS Update 的资源](https://docs.expo.dev/eas-update/optimize-assets): 了解 EAS Update 如何下载资源,以及如何针对下载大小进行优化。 - [其他部署模式](https://docs.expo.dev/eas-update/deployment-patterns): 了解在使用 EAS Update 时适用于你的项目的不同部署模式。 ### 概念 - [EAS Update 的工作原理](https://docs.expo.dev/eas-update/how-it-works): EAS Update 工作原理的概念性概览。 - [使用 EAS CLI 管理分支和渠道](https://docs.expo.dev/eas-update/eas-cli): 了解如何将分支链接到渠道,并使用 EAS CLI 发布更新。 - [运行时版本和更新](https://docs.expo.dev/eas-update/runtime-versions): 了解不同的运行时版本策略,以及它们如何适合您的项目。 ### 故障排查 - [EAS 更新调试](https://docs.expo.dev/eas-update/debug): 了解如何使用基本调试技术来修复更新问题。 - [错误恢复](https://docs.expo.dev/eas-update/error-recovery): 了解如何在使用 expo-updates 库时利用内置的错误恢复功能。 ### 参考 - [使用 EAS Update 的端到端代码签名](https://docs.expo.dev/eas-update/code-signing): 了解代码签名和密钥轮换在 EAS Update 中的工作原理。 - [资源选择与排除](https://docs.expo.dev/eas-update/asset-selection): 了解如何使用资源选择功能,并验证更新是否包含所有必需的应用资源。 - [在不使用其他 EAS 服务的情况下使用 EAS Update](https://docs.expo.dev/eas-update/standalone-service): 了解如何独立于其他 EAS 服务(例如 Build)使用 EAS Update。 - [请求代理](https://docs.expo.dev/eas-update/request-proxying): 通过你自己的服务器将请求代理到 EAS Update 服务器。 - [从 CodePush 迁移](https://docs.expo.dev/eas-update/codepush): 帮助从 CodePush 迁移到 EAS Update 的指南。 - [从 Classic Updates 迁移](https://docs.expo.dev/eas-update/migrate-from-classic-updates): 帮助从 Classic Updates 迁移到 EAS Update 的指南。 - [如何将更新 ID 追溯到 EAS 仪表盘](https://docs.expo.dev/eas-update/trace-update-id-expo-dashboard): 了解在使用 EAS Update 和 expo-updates 库时,如何将更新 ID 追溯到 EAS 仪表盘。 - [估算带宽使用量](https://docs.expo.dev/eas-update/estimate-bandwidth): 了解如何估算 EAS Update 的带宽使用量。 - [在现有原生应用中使用 EAS Update](https://docs.expo.dev/eas-update/integration-in-existing-native-apps): 了解如何将 EAS Update 集成到你现有的原生 Android 和 iOS 应用中,以启用空中更新。 ## EAS 元数据 - [EAS 元数据](https://docs.expo.dev/eas/metadata): 关于如何使用 EAS Metadata 从命令行自动化并维护你的应用商店展示信息的概述。 - [开始使用 EAS Metadata](https://docs.expo.dev/eas/metadata/getting-started): 了解如何使用 EAS Metadata 从命令行自动化并维护你的应用商店展示信息。 ### Reference - [配置 EAS 元数据](https://docs.expo.dev/eas/metadata/config): 了解配置 EAS 元数据的不同方式。 - [EAS 元数据的模式](https://docs.expo.dev/eas/metadata/schema): EAS 元数据中 store config 的参考。 ## EAS 洞察 - [EAS 洞察](https://docs.expo.dev/eas-insights/introduction): EAS 洞察的介绍,这是一个面向使用 expo-insights 库的项目的预览服务。 ## 分发 - [分发:概览](https://docs.expo.dev/distribution/introduction): 提交应用到应用商店或通过内部分发的概览。 - [应用商店最佳实践](https://docs.expo.dev/distribution/app-stores): 了解向应用商店提交应用时的最佳实践。 - [应用转移](https://docs.expo.dev/distribution/app-transfers): 关于将应用所有权转移给其他实体的概述。 - [了解应用大小](https://docs.expo.dev/distribution/app-size): 了解如何确定应用在分发给用户时的实际大小,以及如何深入了解应用大小并进行优化。 ## 参考 - [Webhooks](https://docs.expo.dev/eas/webhooks): 了解如何配置 webhooks,以便在 EAS Build 和 Submit 完成时接收提醒。 ### Expo accounts - [账户类型](https://docs.expo.dev/accounts/account-types): 了解不同类型的 Expo 账户以及如何使用它们。 - [双因素认证](https://docs.expo.dev/accounts/two-factor): 了解如何使用双因素认证(2FA)来保护你的 Expo 账户。 - [程序化访问](https://docs.expo.dev/accounts/programmatic-access): 了解不同类型的访问令牌以及如何使用它们。 - [单点登录(SSO)](https://docs.expo.dev/accounts/sso): 了解你的组织如何使用身份提供商来管理你团队中的 Expo 用户。 - [审计日志](https://docs.expo.dev/accounts/audit-logs): 了解如何通过使用审计日志来跟踪和分析你的账户活动。 ### Billing - [计费:概览](https://docs.expo.dev/billing/overview): 关于计费和订阅信息的概览,用于管理你的 EAS 账户的计划、发票、收据、付款和使用情况。 - [订阅、计划和附加组件](https://docs.expo.dev/billing/plans): 关于可用的 Expo Application Services(EAS)计划及其工作方式、按用量计费和附加组件的深入指南。 - [管理方案和账单](https://docs.expo.dev/billing/manage): 了解如何更新、降级或取消您的 Expo 账户方案,以及管理账单详情。 - [查看付款历史、发票和收据](https://docs.expo.dev/billing/invoices-and-receipts): 了解如何查看您账户的付款历史、下载发票和收据,以及申请针对某笔扣款的退款。 - [基于使用量的定价](https://docs.expo.dev/billing/usage-based-pricing): 了解 Expo 如何对超出套餐配额的客户采用按使用量计费,以及如何监控您的 EAS Build 使用情况。 - [计划、账单和付款常见问题](https://docs.expo.dev/billing/faq): 关于 Expo Application Services (EAS) 计划、账单和付款的常见问题参考。 ## Configuration files - [app.json / app.config.js](https://docs.expo.dev/versions/latest/config/app): Expo 应用配置中可用属性的参考。 - [babel.config.js](https://docs.expo.dev/versions/latest/config/babel): Babel 配置文件参考。 - [metro.config.js](https://docs.expo.dev/versions/latest/config/metro): Metro 中可用配置的参考。 - [package.json](https://docs.expo.dev/versions/latest/config/package-json): package.json 文件中可使用的 Expo 特定属性参考。 ## Expo Router - [路由](https://docs.expo.dev/versions/latest/sdk/router): 一个适用于 React Native 和 Web 应用的基于文件的路由库。 - [路由 UI](https://docs.expo.dev/versions/latest/sdk/router/ui): 一个 Expo Router 子模块,提供无头选项卡组件以创建自定义选项卡布局。 - [路由分栏视图](https://docs.expo.dev/versions/latest/sdk/router/split-view): 一个 Expo Router 子模块,提供原生分栏视图布局。 - [Router 原生标签页](https://docs.expo.dev/versions/latest/sdk/router/native-tabs): 一个提供原生标签页布局的 Expo Router 子模块。 - [路由栈](https://docs.expo.dev/versions/latest/sdk/router/stack): 一个提供 Stack 导航器、工具栏和屏幕组件的 Expo Router API。 - [路由链接](https://docs.expo.dev/versions/latest/sdk/router/link): 一个 Expo Router API,提供 Link、Redirect、preview 和 zoom 过渡组件。 - [路由器颜色](https://docs.expo.dev/versions/latest/sdk/router/color): 一个用于访问平台特定原生颜色的 Expo Router API。 ## Expo SDK - [Expo](https://docs.expo.dev/versions/latest/sdk/expo): Expo 及相关包的一组通用方法和类型。 - [AgeRange](https://docs.expo.dev/versions/latest/sdk/age-range): 一个通过 Android 上的 Play Age Signals API 和 iOS 上的 Declared Age Range 框架提供年龄范围信息访问的库。 - [AppIntegrity](https://docs.expo.dev/versions/latest/sdk/app-integrity): 一个库,提供对 Android 上的 Google Play Integrity API 和 iOS 上的 Apple App Attest 服务的访问。 - [AppleAuthentication](https://docs.expo.dev/versions/latest/sdk/apple-authentication): 一个为 iOS 提供“使用 Apple 登录”功能的库。 - [AuthSession](https://docs.expo.dev/versions/latest/sdk/auth-session): 一个提供用于处理基于浏览器的身份验证 API 的通用库。 - [BackgroundFetch](https://docs.expo.dev/versions/latest/sdk/background-fetch): 一个提供用于执行后台获取任务 API 的库。 - [BackgroundTask](https://docs.expo.dev/versions/latest/sdk/background-task): 一个提供运行后台任务 API 的库。 - [Blob](https://docs.expo.dev/versions/latest/sdk/blob): 适用于 React Native 的符合 Web 标准的 Blob 实现。 - [BlurView](https://docs.expo.dev/versions/latest/sdk/blur-view): 一个会模糊视图下方所有内容的 React 组件。 - [Brownfield](https://docs.expo.dev/versions/latest/sdk/brownfield): 用于将 Expo 集成到现有原生应用中的工具包和 API。 - [BuildProperties](https://docs.expo.dev/versions/latest/sdk/build-properties): 一个配置插件,允许在 prebuild 期间自定义原生构建属性。 - [DevClient](https://docs.expo.dev/versions/latest/sdk/dev-client): 一个用于创建开发构建并包含实用开发工具的库。 - [DeviceMotion](https://docs.expo.dev/versions/latest/sdk/devicemotion): 一个提供访问设备运动和方向传感器的库。 - [DevMenu](https://docs.expo.dev/versions/latest/sdk/dev-menu): 一个为调试构建提供开发者菜单的库。 - [DocumentPicker](https://docs.expo.dev/versions/latest/sdk/document-picker): 一个库,提供对系统 UI 的访问,用于从用户设备上可用的提供程序中选择文档。 - [FileSystem](https://docs.expo.dev/versions/latest/sdk/filesystem): 一个提供访问设备本地文件系统的库。 - [GlassEffect](https://docs.expo.dev/versions/latest/sdk/glass-effect): 使用 iOS 原生 UIVisualEffectView 渲染液态玻璃效果的 React 组件。 - [GLView](https://docs.expo.dev/versions/latest/sdk/gl-view): 一个提供 GLView 的库,GLView 可作为 OpenGL ES 渲染目标并提供 GLContext。适用于渲染 2D 和 3D 图形。 - [ImageManipulator](https://docs.expo.dev/versions/latest/sdk/imagemanipulator): 一个为本地文件系统上的图像处理提供 API 的库。 - [ImagePicker](https://docs.expo.dev/versions/latest/sdk/imagepicker): 一个提供访问系统 UI 的库,用于从手机相册中选择图片和视频,或使用相机拍照。 - [IntentLauncher](https://docs.expo.dev/versions/latest/sdk/intent-launcher): 一个提供用于启动 Android intent 的 API 的库。 - [LightSensor](https://docs.expo.dev/versions/latest/sdk/light-sensor): 一个提供访问设备光传感器能力的库。 - [LinearGradient](https://docs.expo.dev/versions/latest/sdk/linear-gradient): 一个通用的 React 组件,用于渲染渐变视图。 - [LivePhoto](https://docs.expo.dev/versions/latest/sdk/live-photo): 一个允许在 iOS 上显示 Live Photos 的库。 - [MailComposer](https://docs.expo.dev/versions/latest/sdk/mail-composer): 一个提供使用系统特定 UI 来撰写和发送电子邮件功能的库。 - [MediaLibrary](https://docs.expo.dev/versions/latest/sdk/media-library): 一个可访问设备媒体库的库。 - [MeshGradient](https://docs.expo.dev/versions/latest/sdk/mesh-gradient): 将 SwiftUI 中的 MeshGradient 视图暴露给 React Native 的模块。 - [NavigationBar](https://docs.expo.dev/versions/latest/sdk/navigation-bar): 一个提供在 Android 上与原生导航栏进行各种交互的库。 - [ScreenOrientation](https://docs.expo.dev/versions/latest/sdk/screen-orientation): 一个用于管理设备屏幕方向的通用库。 - [SecureStore](https://docs.expo.dev/versions/latest/sdk/securestore): 一个提供在设备本地加密并安全存储键值对的库。 - [SMS](https://docs.expo.dev/versions/latest/sdk/sms): 一个提供访问系统 UI/应用以发送 SMS 消息的库。 - [SQLite](https://docs.expo.dev/versions/latest/sdk/sqlite): 一个提供对数据库访问的库,可通过 SQLite API 进行查询。 - [StatusBar](https://docs.expo.dev/versions/latest/sdk/status-bar): 一个提供与 React Native StatusBar API 相同接口的库,但默认值略有不同,以便在 Expo 环境中更好地工作。 - [StoreReview](https://docs.expo.dev/versions/latest/sdk/storereview): 一个提供访问原生 API 以实现应用内评论的库。 - [SystemUI](https://docs.expo.dev/versions/latest/sdk/system-ui): 一个允许与系统 UI 元素交互的库。 - [TaskManager](https://docs.expo.dev/versions/latest/sdk/task-manager): 一个为可在后台运行的任务提供支持的库。 - [VideoThumbnails](https://docs.expo.dev/versions/latest/sdk/video-thumbnails): 一个允许你从视频文件生成缩略图图像的库。 - [WebBrowser](https://docs.expo.dev/versions/latest/sdk/webbrowser): 一个提供访问系统网页浏览器并支持处理重定向的库。 - [亮度](https://docs.expo.dev/versions/latest/sdk/brightness): 一个提供用于获取和设置屏幕亮度 API 访问的库。 - [传感器](https://docs.expo.dev/versions/latest/sdk/sensors): 一个提供访问设备加速度计、气压计、运动传感器、陀螺仪、光线传感器、磁力计和计步器的库。 - [位置](https://docs.expo.dev/versions/latest/sdk/location): 一个提供访问地理位置信息、轮询当前位置或订阅设备位置更新事件的库。 - [保持唤醒](https://docs.expo.dev/versions/latest/sdk/keep-awake): 一个在渲染时防止屏幕进入休眠的 React 组件。 - [共享](https://docs.expo.dev/versions/latest/sdk/sharing): 一个提供从其他应用共享和接收数据功能的库。 - [关联](https://docs.expo.dev/versions/latest/sdk/linking): 一个提供方法来通用地创建和打开深度链接的 API。 - [剪贴板](https://docs.expo.dev/versions/latest/sdk/clipboard): 一个允许获取和设置剪贴板内容的通用库。 - [加密](https://docs.expo.dev/versions/latest/sdk/crypto): 一个用于加密操作的通用库。 - [加速度计](https://docs.expo.dev/versions/latest/sdk/accelerometer): 一个提供访问设备加速度计传感器的库。 - [启动画面](https://docs.expo.dev/versions/latest/sdk/splash-screen): 一个提供控制原生启动画面可见性行为的库。 - [图像](https://docs.expo.dev/versions/latest/sdk/image): 一个跨平台且高性能的 React 组件,用于加载和渲染图像。 - [地图](https://docs.expo.dev/versions/latest/sdk/maps): 一个在 Android 上提供 Google Maps 访问、在 iOS 上提供 Apple Maps 访问的库。 - [复选框](https://docs.expo.dev/versions/latest/sdk/checkbox): 一个提供基础复选框功能的通用 React 组件。 - [媒体库(next)](https://docs.expo.dev/versions/latest/sdk/media-library-next): 一个提供访问设备媒体库的库。 - [字体](https://docs.expo.dev/versions/latest/sdk/font): 一个允许在运行时加载字体并在 React Native 组件中使用它们的库。 - [小组件](https://docs.expo.dev/versions/latest/sdk/widgets): 使用 Expo UI 组件构建 iOS 主屏幕小组件和实时活动的库。 - [屏幕捕获](https://docs.expo.dev/versions/latest/sdk/screen-capture): 一个允许你保护应用中的屏幕不被截屏或录制的库。 - [常量](https://docs.expo.dev/versions/latest/sdk/constants): 一个 API,提供在应用安装生命周期内保持不变的系统信息。 - [应用程序](https://docs.expo.dev/versions/latest/sdk/application): 一个通用库,可在运行时提供有关原生应用程序的 ID、应用名称和构建版本的信息。 - [打印](https://docs.expo.dev/versions/latest/sdk/print): 一个为 Android 和 iOS(AirPrint)提供打印功能的库。 - [Expo 指纹](https://docs.expo.dev/versions/latest/sdk/fingerprint): 一个用于从 React Native 项目生成指纹的库。 - [摄像头](https://docs.expo.dev/versions/latest/sdk/camera): 一个 React 组件,用于渲染设备前置或后置摄像头的预览。 - [文件系统(旧版)](https://docs.expo.dev/versions/latest/sdk/filesystem-legacy): 一个提供访问设备本地文件系统的库。 - [日历](https://docs.expo.dev/versions/latest/sdk/calendar): 一个提供用于与设备系统日历、事件、提醒以及相关记录交互的 API 的库。 - [日历(next)](https://docs.expo.dev/versions/latest/sdk/calendar-next): 一个提供用于与设备系统日历、事件、提醒事项及相关记录交互的 API 的库。 - [更新](https://docs.expo.dev/versions/latest/sdk/updates): 一个使你的应用能够管理应用代码远程更新的库。 - [服务器](https://docs.expo.dev/versions/latest/sdk/server): Expo Router 项目的服务端 API 和运行时。 - [本地化](https://docs.expo.dev/versions/latest/sdk/localization): 一个为原生用户本地化信息提供接口的库。 - [本地认证](https://docs.expo.dev/versions/latest/sdk/local-authentication): 一个提供实现指纹 API(Android)或 FaceID 和 TouchID(iOS)功能的库,用于通过人脸或指纹扫描来验证用户身份。 - [气压计](https://docs.expo.dev/versions/latest/sdk/barometer): 一个提供访问设备气压传感器的库。 - [清单](https://docs.expo.dev/versions/latest/sdk/manifests): 一个为 Expo 清单提供类型的库。 - [电池](https://docs.expo.dev/versions/latest/sdk/battery): 一个为物理设备提供电池信息以及相应事件监听器的库。 - [磁力计](https://docs.expo.dev/versions/latest/sdk/magnetometer): 一个提供访问设备磁力计传感器的库。 - [视频(expo-video)](https://docs.expo.dev/versions/latest/sdk/video): 一个提供用于在应用中实现视频播放 API 的库。 - [符号](https://docs.expo.dev/versions/latest/sdk/symbols): 一个允许访问原生符号的库。 - [网络](https://docs.expo.dev/versions/latest/sdk/network): 一个提供访问设备网络信息的库,例如其 IP 地址、MAC 地址和飞行模式状态。 - [联系人](https://docs.expo.dev/versions/latest/sdk/contacts): 一个提供访问手机系统联系人的库。 - [联系人(next)](https://docs.expo.dev/versions/latest/sdk/contacts-next): 一个提供访问手机系统联系人的库。 - [蜂窝网络](https://docs.expo.dev/versions/latest/sdk/cellular): 一个提供用户蜂窝服务提供商信息的 API。 - [触觉反馈](https://docs.expo.dev/versions/latest/sdk/haptics): 一个库,提供对 Android 上系统振动效果、iOS 上触觉引擎以及 Web 上 Vibration API 的访问。 - [计步器](https://docs.expo.dev/versions/latest/sdk/pedometer): 一个提供访问设备计步器传感器的库。 - [设备](https://docs.expo.dev/versions/latest/sdk/device): 一个通用库,可访问有关物理设备的系统信息。 - [语音](https://docs.expo.dev/versions/latest/sdk/speech): 一个提供文本转语音功能访问的库。 - [资源](https://docs.expo.dev/versions/latest/sdk/asset): 一个通用库,允许下载资源并将其与其他库一起使用。 - [跟踪透明度](https://docs.expo.dev/versions/latest/sdk/tracking-transparency): 一个用于跟踪应用用户并管理跟踪权限的库。 - [通知](https://docs.expo.dev/versions/latest/sdk/notifications): 一个提供 API 用于获取推送通知 token,并用于展示、安排、接收和响应通知的库。 - [陀螺仪](https://docs.expo.dev/versions/latest/sdk/gyroscope): 一个提供访问设备陀螺仪传感器的库。 - [音频(expo-audio)](https://docs.expo.dev/versions/latest/sdk/audio): 一个提供 API 用于在应用中实现音频播放和录制的库。 ### UI - [Expo UI](https://docs.expo.dev/versions/latest/sdk/ui): 一组组件,允许你直接从 React 使用 Jetpack Compose 和 SwiftUI 构建用户界面。 ## Third-party libraries - [@react-native-async-storage/async-storage](https://docs.expo.dev/versions/latest/sdk/async-storage): 一个提供异步、未加密、持久化的键值存储 API 的库。 - [@react-native-community/datetimepicker](https://docs.expo.dev/versions/latest/sdk/date-time-picker): 一个提供访问系统 UI 以进行日期和时间选择的组件。 - [@react-native-community/netinfo](https://docs.expo.dev/versions/latest/sdk/netinfo): 一个跨平台 API,提供网络信息访问。 - [@react-native-community/slider](https://docs.expo.dev/versions/latest/sdk/slider): 一个 React Native 组件库,提供对系统 UI 中滑块控件的访问。 - [@react-native-masked-view/masked-view](https://docs.expo.dev/versions/latest/sdk/masked-view): 一个提供遮罩视图的库。 - [@react-native-picker/picker](https://docs.expo.dev/versions/latest/sdk/picker): 一个跨平台组件,可访问系统 UI,用于在多个选项之间进行选择。 - [@react-native-segmented-control/segmented-control](https://docs.expo.dev/versions/latest/sdk/segmented-control): 一个 React Native 库,提供用于渲染来自 iOS 的 UISegmentedControl 的组件。 - [@shopify/flash-list](https://docs.expo.dev/versions/latest/sdk/flash-list): 一个 React Native 组件,提供快速且高性能的列表渲染方式。 - [@shopify/react-native-skia](https://docs.expo.dev/versions/latest/sdk/skia): 一个使用 Skia 创建图形的 React Native 库。 - [@stripe/stripe-react-native](https://docs.expo.dev/versions/latest/sdk/stripe): 一个提供访问本地 API 以集成 Stripe 支付的库。 - [react-native-gesture-handler](https://docs.expo.dev/versions/latest/sdk/gesture-handler): 一个提供用于处理复杂手势的 API 的库。 - [react-native-keyboard-controller](https://docs.expo.dev/versions/latest/sdk/keyboard-controller): 一个提供键盘管理器的库,在 Android 和 iOS 上以相同方式工作 - [react-native-maps](https://docs.expo.dev/versions/latest/sdk/map-view): 一个提供 Map 组件的库,在 Android 上使用 Google Maps,在 iOS 上使用 Apple Maps 或 Google Maps。 - [react-native-pager-view](https://docs.expo.dev/versions/latest/sdk/view-pager): 一个组件库,提供类似轮播的视图,用于滑动浏览页面内容。 - [react-native-reanimated](https://docs.expo.dev/versions/latest/sdk/reanimated): 一个提供 API 的库,它极大地简化了创建流畅、强大且易于维护的动画的过程。 - [react-native-safe-area-context](https://docs.expo.dev/versions/latest/sdk/safe-area-context): 一个提供灵活 API 用于访问设备安全区域边距信息的库。 - [react-native-screens](https://docs.expo.dev/versions/latest/sdk/screens): 一个提供原生基础组件以表示屏幕的库,以获得更好的操作系统行为和屏幕优化。 - [react-native-svg](https://docs.expo.dev/versions/latest/sdk/svg): 一个允许在你的应用中使用 SVG 的库。 - [react-native-view-shot](https://docs.expo.dev/versions/latest/sdk/captureRef): 一个允许你捕获 React Native 视图并将其保存为图片的库。 - [react-native-webview](https://docs.expo.dev/versions/latest/sdk/webview): 一个提供 WebView 组件的库。 - [Expo Go 中支持的第三方库](https://docs.expo.dev/versions/latest/sdk/third-party-overview): Expo Go 环境默认包含一组受支持的第三方库。 ## 技术规格 - [Expo Updates v1](https://docs.expo.dev/technical-specs/expo-updates-1): 版本 1 - [Expo 结构化字段值](https://docs.expo.dev/technical-specs/expo-sfv-0): 版本 0 ## More - [Expo CLI](https://docs.expo.dev/more/expo-cli): Expo CLI 是一个命令行工具,是开发者与其他 Expo 工具之间的主要接口。 - [create-expo-app](https://docs.expo.dev/more/create-expo): 一个命令行工具,用于创建新的 Expo 和 React Native 项目。 - [qr.expo.dev](https://docs.expo.dev/more/qr-codes): qr.expo.dev 上二维码生成器的参考文档。 - [发布状态](https://docs.expo.dev/more/release-statuses): 了解 alpha、preview、beta 和 stable 发布状态,以及它们在使用 Expo SDK 和 Expo Application Services(EAS)时如何影响功能稳定性。 - [术语表](https://docs.expo.dev/more/glossary-of-terms): 文档中使用的非显而易见术语列表,涉及 Expo 或更广泛的跨平台开发。 ## Conference Talks - [Keynote: streamline React Native development](https://www.youtube.com/watch?v=lnxanzsP1rM) - [Deploy Everywhere with Expo Router](https://www.youtube.com/watch?v=GKQ_0VfYweg) - [Embracing Native Code and Capabilities](https://www.youtube.com/watch?v=TLoHua8bzPg) - [Keynote: flexibility & iteration speed](https://www.youtube.com/watch?v=StTYy9Duk3E) - [Getting the most out of Expo Development Builds](https://www.youtube.com/watch?v=7J8LRpja9_o) - [Fetch Once, Render Everywhere](https://www.youtube.com/watch?v=BK2xbPW2uUU) - [Launching Desktop Apps to Orbit with React Native](https://www.youtube.com/watch?v=K7yC3JKfWYU) - [Keynote: community & workflows](https://www.youtube.com/watch?v=xHMu4oT6-SQ) - [EAS: Iterate with confidence](https://www.youtube.com/watch?v=LTui_5dqXyM) - [Expo Router: Write Once, Route Everywhere](https://www.youtube.com/watch?v=608r8etX_cg) - [Debugging should be easier](https://www.youtube.com/watch?v=sRLunWEzwHI) - [React Native on Linux with the New Architecture](https://www.youtube.com/watch?v=Ca4SNa6kL_M) - [Not your grandparents' Expo](https://www.youtube.com/watch?v=YufZFVL-BJc) - [Expo keynote](https://www.youtube.com/watch?v=ObeaMae0hug) - [The Hidden Features from V8 to Boost React Native](https://www.youtube.com/watch?v=6e0b2O6NRz4) - [Publish Updates with Expo and React Native](https://www.youtube.com/watch?v=d0wzwVp8dug) - [Limitless App Development](https://www.youtube.com/watch?v=YjJ0NG9MFkg) ## Podcasts - [Expo SDK 54, Expo Router v6 & Expo UI Beta for iOS with Beto Moedano](https://podcast.galaxies.dev/episodes/081-expo-sdk-54-expo-router-v6-expo-ui-beta-for-ios-with-beto-moedano) - [RN Web vs React Strict DOM: Part 2, with Evan Bacon and James Ide](https://infinite.red/react-native-radio/rnr-340-rn-web-vs-react-strict-dom-part-2-with-evan-bacon-and-james-ide) - [Expo Atlas with Cedric van Putten](https://infinite.red/react-native-radio/rnr-333-expo-atlas-with-cedric-van-putten) - [Expo Router, RSC & DOM Components](https://podcast.galaxies.dev/episodes/059-expo-router-rsc-dom-components-with-evan-bacon) - [Universal React Native Apps with DOM & RSC](https://www.callstack.com/podcasts/universal-react-native-apps-with-dom-react-server-components) - [Streamlined React Native Development](https://softwareengineeringdaily.com/2025/01/01/streamlined-react-native-development-with-charlie-cheever-and-james-ide/) - [Debugging the Debugger](https://infinite.red/react-native-radio/rnr-316-debugging-the-debugger-with-cedric-van-putten-and-alex-hunt) - [What to do without App Center](https://infinite.red/react-native-radio/rnr-315-what-to-do-without-app-center) - [Expo Workflows with Jon Samp](https://infinite.red/react-native-radio/rnr-314-announcing-expo-workflows-with-jon-samp) - [How to Handle App Center Retirement](https://www.callstack.com/podcasts/how-to-handle-app-center-retirement) - [Using RSCs in Expo Router](https://podrocket.logrocket.com/using-rscs-expo-router-evan-bacon) - [Expo EAS and 100 Snakes](https://podcast.galaxies.dev/episodes/038-expo-eas-and-100-snakes-with-jon-samp) - [React Native Performance in 2024](https://www.callstack.com/podcasts/react-native-performance-in-2024-challenges-solutions-forecasts) - [Expo Router & Universal React Native Apps](https://podcast.galaxies.dev/episodes/028-expo-router-universal-react-native-apps-with-evan-bacon) - [Expo, build react-native app quicker](https://www.youtube.com/watch?v=Hnh5ew0jfKQ) - [EAS, Expo Prebuild & SDK 50](https://podcast.galaxies.dev/episodes/025-eas-expo-prebuild-sdk-50-with-kadi-kraman) - [Improving Developer Experience with Expo](https://www.youtube.com/watch?v=4PPDAvgfLHk) - [Expo Launch Party](https://infinite.red/react-native-radio/rnr-277-expo-launch-party) - [Expo Router with Evan Bacon](https://infinite.red/react-native-radio/rnr-256-expo-router-with-evan-bacon) - [Expo, Router & Debugging](https://podcast.galaxies.dev/episodes/007-expo-router-debugging-with-cedric-van-putten) ## Live Streams - [Announcing the 2025 Expo App Award winners!](https://www.youtube.com/watch?v=KnZ3LWkXzSk) - [What's new in Expo SDK 54?](https://www.youtube.com/watch?v=KBlbkjqxNbM) - [Shipping with Expo: How to get your Bolt app to the app stores](https://www.youtube.com/watch?v=ViU7207_W54) - [How to use Protected Routes in Expo Router V5 for smooth auth](https://www.youtube.com/watch?v=XCTaMu0qnFY) - [Best practices for using Unistyles 3.0 to style cross platform applications](https://www.youtube.com/watch?v=K3wZg-Pxt3k) - [How to build mobile apps without writing a line of code with Bolt and Expo](https://www.youtube.com/watch?v=dT7hlszpO04) - [What is Legend List?](https://www.youtube.com/watch?v=XpZMveUCke8) - [How to add Apple home screen widgets to React apps](https://www.youtube.com/watch?v=hgmAMrVRzRM) - [Your 2025 React Native Tech Stack](https://www.youtube.com/watch?v=kqdrn-jEaXY) - [Radon IDE: the VS Code extension for React Native](https://www.youtube.com/watch?v=UeYmRKWhwFI) - [Building 4 apps in 4 weeks with Expo](https://www.youtube.com/watch?v=YOfLHtK8B04) - [Launch Week 2024 AMA](https://www.youtube.com/watch?v=NHpS9JaL7jA) - [Expo DOM component live demo](https://www.youtube.com/watch?v=jU4_1vpjahw) - [RNL Conf Fireside Interview: Charlie Cheever & Mo Javad](https://www.youtube.com/watch?v=ZBEkeRy3wjk) - [How to migrate a React website to native with Expo DOM components](https://www.youtube.com/watch?v=lLlu4fPMXes) - [New Architecture adoption strategies](https://www.youtube.com/watch?v=VqFwrEoni40) - [Hidden gems of the Expo Modules API](https://www.youtube.com/watch?v=nWY4GbIN0vY) - [Debugging with Sentry](https://www.youtube.com/watch?v=HO_KT0LbPs0) - [How to do React Native styling with Tamagui](https://www.youtube.com/watch?v=5ubbsSD-iXg) - [How to do React Native styling with NativeWind](https://www.youtube.com/watch?v=TtmWw0NfsQk) - [An introduction to built-in styling in React Native](https://www.youtube.com/watch?v=M1ma6Y5Ih_c) - [What React devs need to know about React Native](https://www.youtube.com/watch?v=iB7sc-fzpWw) - [Expo SDK 51: New Architecture, Router 3.5, expo.new and more](https://www.youtube.com/watch?v=k1ISWPgP4S4) - [What is Expo Orbit? Live demo of speeding up dev workflow](https://www.youtube.com/watch?v=vUoIoYq8WNM) - [How to build TV apps from scratch, and with Ignite stack](https://www.youtube.com/watch?v=PUMBWeLVuiw) - [Expo SDK 50: API Routes, Fingerprint, Dev Tools and SQLite](https://www.youtube.com/watch?v=cKFSVUo3AnI) ## YouTube Tutorials - [Introducing Expo Agent (beta): build real, production-quality native apps from your browser](https://www.youtube.com/watch?v=3yyy32R0s2k) - [What's new in Expo SDK 55](https://www.youtube.com/watch?v=q72aeXsbF9c) - [AI mobile app development with Replit and Expo](https://www.youtube.com/watch?v=Zm4z-8i7PgA) - [How to add Android widgets to Expo apps | Native, Resizable, Configurable widgets](https://www.youtube.com/watch?v=rCVWq4WkoDA) - [How to add native iOS Widgets to your Expo app](https://www.youtube.com/watch?v=UH4ejdz3fko) - [How to send emails with Resend from your Expo app](https://www.youtube.com/watch?v=8sPD8SNcUFA) - [The fastest mobile QA workflow: Expo pull request previews in GitHub Actions](https://www.youtube.com/watch?v=7UVIrqrrrso) - [Getting started with Meta Horizon Development using Expo](https://www.youtube.com/watch?v=24G2tui0Ts8) - [How to make Expo apps faster | Expo app development best practices](https://www.youtube.com/watch?v=vFbim_U1Lmc) - [Learn how to use the new Icon Composer with Expo](https://www.youtube.com/watch?v=RZ_QMym3adw) - [Introducing Expo MCP Server](https://www.youtube.com/watch?v=dp9dpIgDxZQ) - [How to adopt Liquid Glass in an Expo app](https://www.youtube.com/watch?v=NMCQOBIwW2M) - [Liquid Glass Tabs with Expo Router v6 | Native Tabs](https://www.youtube.com/watch?v=QqNZXdGFl44) - [Expo UI iOS Liquid Glass Tutorial](https://www.youtube.com/watch?v=2wXYLWz3YEQ) - [Expo SDK 54: Liquid Glass, Expo UI, Expo Router v6, React 19, Link Previews](https://www.youtube.com/watch?v=iYh-7WfJTR0) - [How to upgrade from Expo SDK 53 to SDK 54 in 5 minutes](https://www.youtube.com/watch?v=QuN63BRRhAM) - [When to use over the air updates | Three important OTA use cases](https://www.youtube.com/watch?v=PMRekmaeb1o) - [Top 5 Expo SDK Features You're Not Using](https://www.youtube.com/watch?v=HQ_xzbq_BnQ) - [Repack Workflow Demo | Speed up CI builds by ~80%](https://www.youtube.com/watch?v=peZ36U87k-M) - [How to Add In-App Subscriptions with RevenueCat + Expo](https://www.youtube.com/watch?v=R3fLKC-2Qh0) - [How to build a Custom Expo Module](https://www.youtube.com/watch?v=zReFsPgUdMs) - [Speed up your Expo Builds with Remote Build Cache](https://www.youtube.com/watch?v=5SmaC-JQS_k) - [Build a Local-First Sketch App with Expo, Instant & Reanimated](https://www.youtube.com/watch?v=DEJIcaGN3vY) - [How to use Expo Background Tasks](https://www.youtube.com/watch?v=4lFus7TvayI) - [Building auth and onboarding flows with protected routes](https://www.youtube.com/watch?v=zHZjJDTTHJg) - [Golden Workflow: Automate the creation of development builds](https://www.youtube.com/watch?v=u8MAJ0F18s0) - [Golden Workflow: Share preview updates with your team](https://www.youtube.com/watch?v=v_rzRcVSQYQ) - [Golden Workflow: Deploy your app to production with an automated workflow](https://www.youtube.com/watch?v=o-peODF6E2o) - [How to publish your AI app to the app store | No code needed](https://www.youtube.com/watch?v=T1akm3DPNus) - [Learn how to build with the new expo-maps library](https://www.youtube.com/watch?v=jDCuaIQ9vd0) - [Building an Auth Flow with Expo Router](https://www.youtube.com/watch?v=yNaOaR2kIa0) - [Using Modals with Expo Router](https://www.youtube.com/watch?v=gNzuJVRmyDk) - [Using a Tab Navigator with Expo Router](https://www.youtube.com/watch?v=BElPB4Ai3j0) - [Using a Stack Navigator with Expo Router](https://www.youtube.com/watch?v=izZv6a99Roo) - [Introduction to Expo Router Layout Files](https://www.youtube.com/watch?v=Yh6Qlg2CYwQ) - [Sign in with Apple and Expo Router Tutorial](https://www.youtube.com/watch?v=tqxTijhYhp8) - [How to integrate Google Sign-In with Expo using Expo Router API Routes](https://www.youtube.com/watch?v=V2YdhR1hVNw) - [Master Expo Router API Routes | Handle Requests & Stream Data](https://www.youtube.com/watch?v=2_UzR1wdimI) - [EAS Workflows: React Native CI/CD for app developers](https://www.youtube.com/watch?v=OJ2u9tQCpr4) - [How to set up iOS Universal Links and Android App Links with Expo Router](https://www.youtube.com/watch?v=kNbEEYlFIPs) - [App icon and splash screen](https://www.youtube.com/watch?v=3Bsw8a1BJoQ) - [How to manage Multiple App Environments with Expo](https://www.youtube.com/watch?v=uKGx3gRrhx0) - [How to create a production build for Android](https://www.youtube.com/watch?v=nxlt8uwqhpE) - [How to create a production build for iOS](https://www.youtube.com/watch?v=VZL_e0cEwo8) - [How to configure multiple app variants](https://www.youtube.com/watch?v=UtJJCAfrjIg) - [How to create and share internal distribution builds](https://www.youtube.com/watch?v=1fQuGLHxWks) - [How to use over the air updates to share previews with your team](https://www.youtube.com/watch?v=vPKh-tNm-yI) - [How to configure a development build](https://www.youtube.com/watch?v=uQCE9zl3dXU) - [How to trigger builds from a GitHub repository](https://www.youtube.com/watch?v=fBLFEFC0ip0) - [How to create and run a cloud build for iOS Simulator](https://www.youtube.com/watch?v=SgL97PFZctg) - [How to create and run a cloud build for iOS devices](https://www.youtube.com/watch?v=HbfWU7_o4cU) - [How to create and run a cloud build for Android](https://www.youtube.com/watch?v=D612BUtvvl8) - [How to automate App Version code](https://www.youtube.com/watch?v=C8x4N9UmzS8) - [How to deploy an app with EAS Hosting from Expo](https://www.youtube.com/watch?v=NaKsfWciJLo) - [Universal Full-Stack Expo Stripe Payment Integration](https://www.youtube.com/watch?v=J0tyxUV_omY) - [How to implement a Rich Text Editor using DOM Components](https://www.youtube.com/watch?v=CxORa1tXMjw) - [How to build local-first native apps with LiveStore and Expo](https://www.youtube.com/watch?v=zQIhJqYU1Qw) - [EAS Workflows: React Native CI/CD for Android, iOS, & web apps](https://www.youtube.com/watch?v=4VvI0ZVp0cw) - [Expo SDK 52](https://www.youtube.com/watch?v=quZv3uKSEfY) - [How to run end to end tests on EAS Build](https://www.youtube.com/watch?v=-o-bfIRrg9U) - [How to configure status bar, splash screen & app icon](https://www.youtube.com/watch?v=OgGCYdElcZo) - [How to handle platform differences](https://www.youtube.com/watch?v=mEKQvF4irBM) - [How to take and save screenshots](https://www.youtube.com/watch?v=Jft3_Yfr-p4) - [How to add gestures to an Expo App](https://www.youtube.com/watch?v=0q48LLvTGDU) - [How to create a modal in React Native](https://www.youtube.com/watch?v=HRAMzrBwVeo) - [How to use an image picker](https://www.youtube.com/watch?v=iEQZU58naS8) - [How to build a screen in an Expo app](https://www.youtube.com/watch?v=3rcOP8xDwTQ) - [How to add navigation to your app with Expo Router](https://www.youtube.com/watch?v=8336fcFV_T4) - [How to create your first Expo app](https://www.youtube.com/watch?v=m1-bc53EGh8) - [Expo Go & Development Builds: Which should you use?](https://www.youtube.com/watch?v=FdjczjkwQKE) - [Expo Notifications with EAS | Complete Guide](https://www.youtube.com/watch?v=BCCjGtKtBjE) - [How to create a native module with the Expo modules API](https://www.youtube.com/watch?v=CdaQSlyGik8) - [How to wrap native libraries](https://www.youtube.com/watch?v=M8eNfH1o0eE) - [Keyboard Handling tutorial for React Native apps](https://www.youtube.com/watch?v=Y51mDfAhd4E) - [EAS Update + Github = Automatic OTA updates](https://www.youtube.com/watch?v=s2iIfXK-o0I) - [How to start your first Expo project in 2 minutes](https://www.youtube.com/watch?v=yOUAEfDuI44) - [How to debug EAS Update](https://www.youtube.com/watch?v=m9PLTr3t3S4) - [Network Debugging | Three ways to use the built in network inspector](https://www.youtube.com/watch?v=eTq_4NwCO-A) - [How to use Logcat & macOS Console to debug](https://www.youtube.com/watch?v=LvCci4Bwmpc) - [How to quickly publish to the App Store & Play Store with EAS Submit](https://www.youtube.com/watch?v=-KZjr576tuE) - [Automatic App Version Management](https://www.youtube.com/watch?v=Gk7RHDWsLsQ) ## Other Expo documentation files - [/llms-full.txt](https://docs.expo.dev/llms-full.txt): Complete documentation for Expo, including Expo Router, Expo Modules API, development process, and more - [/llms-eas.txt](https://docs.expo.dev/llms-eas.txt): Complete documentation for Expo Application Services (EAS) - [/llms-sdk.txt](https://docs.expo.dev/llms-sdk.txt): Complete documentation for the latest Expo SDK - [/llms-sdk-v54.0.0.txt](https://docs.expo.dev/llms-sdk-v54.0.0.txt): Complete documentation for Expo SDK 54 - [/llms-sdk-v53.0.0.txt](https://docs.expo.dev/llms-sdk-v53.0.0.txt): Complete documentation for Expo SDK 53 - [/llms-sdk-v52.0.0.txt](https://docs.expo.dev/llms-sdk-v52.0.0.txt): Complete documentation for Expo SDK 52 - [/llms-sdk-v51.0.0.txt](https://docs.expo.dev/llms-sdk-v51.0.0.txt): Complete documentation for Expo SDK 51