跳到主要内容

身份验证设置

Flutter 新闻工具包已预先配置为支持使用无密码电子邮件、Google 登录、Apple ID 以及使用 Facebook 和 Twitter 登录的社交身份验证。要为您的新闻应用设置此功能,请对每个 Firebase 项目和应用使用以下说明。

电子邮件

新闻工具包支持无密码登录。这意味着会将一个深层链接发送到用户的电子邮件地址,当用户点击该链接时,会打开您的应用并登录用户。

Firebase 配置

在您的 Firebase 控制台中,转到 Firebase -> 身份验证 -> 登录方法 -> 添加新提供商 -> 电子邮件/密码 以设置您的电子邮件身份验证方法。该工具包目前支持无密码登录流程,因此请务必启用此设置

注意

使用电子邮件链接的无密码身份验证需要额外的配置步骤。请按照 在 Apple 平台上的身份验证在 Android 上的身份验证 配置步骤进行操作。

设置好电子邮件身份验证方法后,转到 Firebase -> 互动 -> 动态链接。设置新的动态链接 URL 前缀(例如,您的应用程序名称.page.link),动态链接 URL 为 "/email_login"。

设置好动态链接后,将 launch.json 文件中 FLAVOR_DEEP_LINK_DOMAIN 的占位符值替换为您刚刚创建的 动态链接 URL 前缀。此环境变量将在 firebase_authentication_client.dart 中用于生成将发送给用户的动态链接 URL。

此外,将 project.pbxproj 文件中每个 FLAVOR_DEEP_LINK_DOMAIN 键的占位符值替换为您刚刚创建的动态链接 URL 前缀。

Google

Firebase 配置

在您的 Firebase 控制台中,转到 Firebase -> 身份验证 -> 登录方法 -> 添加新提供商 -> Google 以设置您的 Google 身份验证方法。在 Web SDK 配置 下拉菜单中添加您的(Google)Web ID 和 Web 客户端密钥。您可以通过在 Google API 控制台上选择您的项目和 OAuth 2.0 条目来找到现有项目的 Web 客户端 ID。

Apple

Firebase 配置

在您的 Firebase 控制台中,转到 Firebase -> 身份验证 -> 登录方法 -> 添加新提供商 -> Apple 以设置您的 Apple 身份验证方法。按照 Apple 身份验证Android 上的 Apple 身份验证 的附加配置步骤在您的应用中启用此功能。

完成设置

要完成设置,请将此授权回调 URL 添加到 Apple Developer 控制台中的应用配置中。可能需要其他步骤来验证此 Web 域的所有权。要了解更多信息,请查看 Firebase 身份验证 页面。

Facebook

创建应用

登录或在 Facebook 开发者门户中创建一个帐户以开始使用。登录后,创建一个新应用以支持您的开发项目。在同一门户中,启用 Facebook 登录产品(产品 -> Facebook 登录)。接下来,转到 角色 -> 角色 并添加您的开发团队,以便团队可以自定义 Android 和 iOS 的应用配置。最后,转到 设置 -> 高级 并启用 应用身份验证,原生或桌面应用?

Firebase 配置

在设置好您的 Firebase 项目后,转到 Firebase -> 身份验证 -> 登录方法 -> 添加新提供商 -> Facebook 以设置您的 Facebook 身份验证方法。填写从创建的 Facebook 应用中获得的应用程序 ID 和密钥。

完成设置

要完成设置,请将 Firebase 身份验证登录方法中列出的 OAuth 重定向 URI 添加到您的 Facebook 应用配置中。

此外,将 project.pbxproj 文件中每个 FACEBOOK_APP_IDFACEBOOK_CLIENT_TOKENFACEBOOK_DISPLAY_NAME 键的占位符值替换为其对应的值。

有关更多详细信息,请查看 Firebase 身份验证 页面。

Twitter

创建应用

登录或在 Twitter 开发者门户中创建一个帐户。登录后,创建一个项目和一个应用,以在您的新闻应用中启用 Twitter 身份验证。通过将 "yourapp://" 设置为回调 URI 并将 "原生应用" 设置为应用类型来启用 OAuth 2.0 身份验证。如果可能,请将您的整个团队添加为 Twitter 应用的开发者,以便每个人都可以访问该应用的 ID 和密钥。

启用提升的访问权限

Twitter 产品中,请务必启用具有 “提升” 访问权限的 Twitter API v2。Twitter 需要此功能才能进行身份验证。

注意

您可能需要填写表格才能申请 “提升” 访问权限。

Firebase 配置

在设置好您的 Firebase 项目后,转到 Firebase -> 身份验证 -> 登录方法 -> 添加新提供商 -> Twitter 以设置您的 Twitter 身份验证方法。填写从创建的 Twitter 应用中获得的应用程序 ID 和密钥。

完成设置

要完成设置,请将 Firebase 身份验证登录方法中列出的 OAuth 重定向 URI 添加到您的 Twitter 应用配置中。

此外,将 launch.json 文件中的 TWITTER_API_KEYTWITTER_API_SECRET 的占位符值替换为实际值。您还必须将 project.pbxproj 文件中每个 TWITTER_REDIRECT_URI_SCHEME 键的占位符值替换为其对应的值。

有关更多信息,请查看 Firebase 身份验证 页面。