2012-12-19 101 views
0

我已經按照關於如何使用youtube gdata的教程進行了操作。使用YouTube和YouTube上的視頻填充列表視圖。源代碼可以用:未獲取YouTube視頻列表

http://blog.blundell-apps.com/click-item-in-a-listview-to-show-youtube-video/

一旦我已經從改變了的YouTube的GData鏈路

https://gdata.youtube.com/feeds/api/videos?author= 「+用戶名+」 & V = 2 & ALT = jsonc

至:

http://gdata.youtube.com/feeds/api/users/GoogleDevelopers/uploads

我沒有得到視頻列表,爲什麼?

回答

2

原因是它不工作的原因是:

從這個網址:

https://gdata.youtube.com/feeds/api/videos?author= 「+用戶名+」 & V = 2 & ALT = jsonc

你得到JSON字符串響應爲gdata.youtube.com

and

在這個網址:

http://gdata.youtube.com/feeds/api/users/GoogleDevelopers/uploads

你得到RSS XML在gdata.youtube.com響應

SOLUTION:

,使其工作,你將需要將類中的JSON字符串解析更改爲XML解析

OR

這個網址用JSON格式獲取數據:

http://gdata.youtube.com/feeds/api/users/GoogleDevelopers/uploads?v=2&alt=jsonc

,以及我們如何在Android的解析JSON使用本教程已知:

http://www.androidhive.info/2012/01/android-json-parsing-tutorial/

+0

喜Bhaiya在你的指導我已經搜查,現在我要把它,感謝您的幫助,我會嘗試... – Udhikriman

+0

如果我只想爲gdata.youtube.com獲得JSON字符串響應,那麼我需要寫什麼url – Udhikriman

+0

@Udhikriman:你在這裏發送的「+ username +」用於獲取json –

1

這是新的谷歌API版本3的完美代碼

<html> 
    <head> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
<script type="application/javascript"> 
$(document).ready(function() { 

    var channelName = 'PochicaKing'; 

    $.get(
      "https://www.googleapis.com/youtube/v3/channels", { 
      part: 'contentDetails', 
      forUsername: channelName, 
//   mine: true, 
//   access_token: 'ya29.cQEoJbvUmAMT6xJFgDoi4gq0EW8O5Q_9ZqLtNUay0AbNh-mldmNh5mlicarLx00AHxL_O6Vur8M3Bw', 
      key: 'AIzaSyARSqGexKgNt0BdHUJBXg2pnxMGgYXrszw' 
      }, 
    function (data) { 

    $.each(data.items, function (i, item) { 
     console.log(item); 
     pid = item.contentDetails.relatedPlaylists.likes; 
     gitVids(pid); 
    }); 

    } 
); 

    function gitVids(pid) { 

    $.get(
      "https://www.googleapis.com/youtube/v3/playlistItems", { 
       part: 'snippet', 
       maxResults: 5, 
       playlistId: pid, 
       key: 'AIzaSyARSqGexKgNt0BdHUJBXg2pnxMGgYXrszw' 
      }, 
    function (data) { 

     var output; 
     $.each(data.items, function (i, item) { 
//  console.log(item); 
     vidTitle = item.snippet.title; 
     vidId = item.snippet.resourceId.videoId; 

     output = '<li><iframe width="420" height="315"src="http://www.youtube.com/embed/' + vidId + '"></iframe></li>' 
     $('#results').append(output); 
     }); 

    } 
    ); 



    } 

}); 

</script> 
    </head> 
    <body> 
    <ul id="results"></ul> 
    </body> 
</html>