本文档介绍了生成 Android WebView
、iOS UIWebView
或类似对象的过程,以允许用户创建 YouTube 频道,然后将控制权交还给您的应用。您的应用应实现此流程,以处理用户解除与未关联的 Google 帐号关联并尝试执行确实需要 YouTube 频道的操作时发生的 API 错误。
注意:正如开发者指南中所述,拥有 Google 帐号但没有 YouTube 频道的用户会被标识为拥有未关联的 Google 帐号。此类用户可以使用许多需要用户授权的 YouTube 功能,例如创建播放列表或对视频评分。但是,如果不先创建一个 YouTube 频道,这些用户就无法将视频上传到 YouTube。
用例
以下步骤说明了此用例:
-
拥有未关联 Google 帐号的用户尝试完成需要 YouTube 频道的操作。您的应用针对该操作发送已获授权的 API 请求。
-
YouTube 会返回
youtubeSignupRequired
错误,指明用户必须注册 YouTube 帐号才能完成所请求的操作。 -
您的应用启动的
WebView
或等效项会加载以下网址:https://m.youtube.com/create_channel?chromeless=1&next=/channel_creation_done
通过该页面,用户可以登录并创建 YouTube 频道。
-
您的应用会监控
WebView
,以确定其位置信息在何时更改为以下网址,这表示该用户的 Google 帐号已与 YouTube 频道相关联。https://m.youtube.com/channel_creation_done
-
应用关闭
WebView
并重新发送第 1 步中已获授权的 API 请求。
如果用户关闭了 WebView
,但没有完成创建 YouTube 频道的步骤,那么您的应用将无法重新发送第 1 步中的 API 请求,因此会成功。在这种情况下,您的应用可以重申,用户需要创建一个 YouTube 频道,才能完成所请求的操作。
其他资源
以下资源可以帮助您在应用中实现此流程:
-
Android 开发者
-
iOS 开发者
- 适用于 Mac 的 Google 工具箱 - OAuth 2.0 控制器 - 此项目演示了如何在
UIWebView
中启动 OAuth 2.0 授权流程,其操作方法与本文档中所述的流程类似。
- 适用于 Mac 的 Google 工具箱 - OAuth 2.0 控制器 - 此项目演示了如何在