身份验证设置
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_ID 、 FACEBOOK_CLIENT_TOKEN 和 FACEBOOK_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_KEY 和 TWITTER_API_SECRET 的占位符值替换为实际值。您还必须将 project.pbxproj
文件中每个 TWITTER_REDIRECT_URI_SCHEME 键的占位符值替换为其对应的值。
有关更多信息,请查看 Firebase 身份验证 页面。