0

iPhone プロジェクトで GData を使用することができました。また、すべてのアップロード動画とすべてのプレイリスト名も取得できました。

プロジェクトへの参照: YouTubeList

セルが押されたときにビデオを表示するには、プレイリストのすべてのリンクを取得する必要があります (追加したプロジェクトでそれがどのように機能するかを確認できます)

プレイリスト名を取得するコードは次のとおりです。

    // get the youtube service
    GDataServiceGoogleYouTube *service = [self youTubeService];

    // feed id for user playlist
    NSString *uploadsID = kGDataYouTubeUserFeedIDPlaylists;
    // construct the feed url
    NSURL *feedURL = [GDataServiceGoogleYouTube youTubeURLForUserID:kGDataServiceDefaultUser
                                                         userFeedID:uploadsID];
    // make API call
    [service fetchFeedWithURL:feedURL
                     delegate:self
            didFinishSelector:@selector(request:finishedWithFeed:error:)];

    [super viewDidLoad];
}

- (void)request:(GDataServiceTicket *)ticket
finishedWithFeed:(GDataFeedBase *)aFeed
          error:(NSError *)error {

    self.feed = (GDataFeedYouTubeVideo *)aFeed;
    NSLog(@"FEED:%@", [self.feed entries]);
    [self.tableView reloadData];
}

上記のコードは、アカウントにあるすべてのプレイリストのリストを表示します。特定のプレイリストの動画を取得する必要がある

4

1 に答える 1

0

私は次のように修正しました:

ビューでDidLoad

NSURL *feedURL = [NSURL URLWithString:@"http://gdata.youtube.com/feeds/api/playlists/PlayList_ID"];
// make API call

[service fetchFeedWithURL:feedURL
                    delegate:self
                    didFinishSelector:@selector(playlistTicket:finishedWithFeed:error:)];

次に、メソッド:

- (void)playlistTicket:(GDataServiceTicket *)ticket finishedWithFeed:(GDataFeedYouTubePlaylist *)feed error:(NSError *)error {
  if(!error)
   {
       // save the feed and reload the table
       self.feed = feed;
       [self.tableView reloadData];
   }
}
于 2013-03-28T12:40:25.430 に答える