使用 Google 身份验证

编辑页面

一份关于如何使用 @react-native-google-signin/google-signin 库将 Google 身份验证集成到你的 Expo 项目中的指南。


For the complete documentation index, see llms.txt. Use this Use this file to discover all available pages.

@react-native-google-signin/google-signin 库提供了一种在您的 Expo 应用中集成 Google 身份验证的方式。它还提供原生登录按钮,并支持对用户进行身份验证,以及获取其使用 Google API 的授权。您可以通过在 app config 中添加 config plugin 来在项目中使用该库。

本指南提供了如何为您的项目配置该库的信息。

前置条件

由于 @react-native-google-signin/google-signin 库需要自定义原生代码,因此不能在 Expo Go 应用中使用。了解更多关于向您的应用添加自定义原生代码的信息。

安装

有关如何安装和配置该库的说明,请参阅 @react-native-google-signin/google-signin 文档:

React Native Google Sign In:Expo 安装说明

为 Android 和 iOS 配置 Google 项目

以下是如何为 Android 和 iOS 配置 Google 项目的说明。

将应用上传到 Google Play 商店

如果您的应用计划在生产环境中运行,我们建议将应用上传到 Google Play 商店。即使您的项目仍在开发中,您也可以将应用提交到商店进行测试。这使您可以在应用通过 EAS 签名进行测试时测试 Google 登录,以及在应用通过 Google Play App Signing 签名用于商店发布时进行测试。要了解有关应用提交流程的更多信息,请按以下顺序查看以下指南:

创建您的第一个 EAS Build
为应用商店构建您的项目
首次手动上传 Android 应用

配置您的 Firebase 或 Google Cloud Console 项目

更深入的配置指南请参阅该库的文档

对于 Android,一旦您上传了应用,在 Firebase 或 Google Cloud Console 中配置项目时,系统会要求您提供 SHA-1 证书指纹值。您可以提供两种类型的值:

  • 您构建的 .apk 的指纹(在您的机器上或使用 EAS Build)。您可以在 Google Play Console 的 Release > Setup > App Integrity > Upload key certificate 中找到 SHA-1 证书指纹。
  • 从 play store 下载的 生产应用 的指纹。您可以在 Google Play Console 的 Release > Setup > App Integrity > App signing key certificate 中找到 SHA-1 证书指纹。

使用 Firebase

有关如何使用 Firebase 为 Android 和 iOS 配置项目的更多说明:

Firebase

将 google-services.json 和 GoogleService-Info.plist 上传到 EAS

如果您在 Android 和 iOS 中使用 Firebase 方法(如上文各节所述),您需要确保 google-services.jsonGoogleService-Info.plist 可供 EAS 用于构建应用。您可以将它们提交到代码仓库中,因为这些文件不应包含敏感值;或者您也可以将这些文件视为机密,添加到 .gitignore 中,并使用下面的指南使它们可在 EAS 中使用。

将机密文件上传到 EAS 并在应用配置中使用

使用 Google Cloud Console

当您不使用 Firebase 时,这是配置 Google 项目的另一种方法。

有关如何使用 Google Cloud Console 为 Android 和 iOS 配置 Google 项目的更多说明:

不使用 Firebase 的 Expo