0

我有一个将视频文件上传到 youtube 的应用程序。我遇到的问题是,如果想要将视频文件上传到 youtube 的用户在 youtube 上有多个频道,我的登录流程不会显示用户可以选择正确频道的列表。例如,当我使用具有两个身份的帐户登录时,Google 的应用程序 Capture 会显示以下内容: 选择频道

当我的应用使用同一个帐户时,我看不到频道列表。这是我用来登录 youtube 的代码:

NSString *scope = [GDataServiceGoogleYouTube authorizationScope];

SEL finishedSel = @selector(viewController:finishedWithAuth:error:);

GTMOAuth2ViewControllerTouch *viewController;
viewController = [GTMOAuth2ViewControllerTouch controllerWithScope:scope
                                                          clientID:g_clientID
                                                      clientSecret:g_clientSecret
                                                  keychainItemName:g_keychainItemName
                                                          delegate:self
                                                  finishedSelector:finishedSel];

UINavigationController *aNavController = [[UINavigationController alloc] initWithRootViewController:viewController];
[self presentModalViewController:aNavController animated:YES];
[aNavController release];

那么我需要做什么来显示这个频道列表呢?

4

1 回答 1

0

所以我设法解决了这个问题。

要查看用户的 youtube 频道列表,您必须在http://code.google.com/p/google-api-objectivec-client/使用最新版本的 google 的 Objective-c 库。

此外,当您授权时,您必须使用 kGTLAuthScopeYouTube 授权范围,如下所示:

GTMOAuth2ViewControllerTouch *viewController;
    viewController = [GTMOAuth2ViewControllerTouch controllerWithScope:kGTLAuthScopeYouTube
                                                              clientID:g_clientID
                                                          clientSecret:g_clientSecret
                                                      keychainItemName:g_keychainItemName
                                                              delegate:self
                                                      finishedSelector:finishedSel];

    UINavigationController *aNavController = [[UINavigationController alloc] initWithRootViewController:viewController];
    [self presentModalViewController:aNavController animated:YES];
    [aNavController release];
于 2013-11-13T18:54:14.540 回答