2016-08-03 94 views
0

我正在尝试从我的Android应用程序的YouTube视频中获得特定订单。我想搜索,例如:Youtube-api v3:是否可以按某个订单获取视频?

Fight 1 
Fight 2 
Fight 3 
Fight 4 

这是我的搜索列表:

YouTube.Search.List search = mYouTubeDataApi.search().list("id,snippet"); 

      search.setKey(ApiKey.YOUTUBE_API_KEY); 
      search.setQ(mTitle + " " + mSearchQuery); 

      search.setType("video");     
      search.setFields("items(id/kind,id/videoId,snippet/title,snippet/thumbnails/default/url)"); 
      search.setMaxResults(YOUTUBE_PLAYLIST_MAX_RESULTS); 
      searchResponse = search.execute(); 

到目前为止,我已经尝试添加到我的搜索列表:

search.setOrder("title"); 

,也我尝试用这种方法手动排序物品

List<Video> items = videoListResponse.getItems(); 
    Collections.sort(items, new Comparator<Video>() { 
     @Override 
     public int compare(Video video, Video t1) { 
      return video.getSnippet().getTitle().compareToIgnoreCase(t1.getSnippet().getTitle()); 
     } 
    }); 
    return new Pair(searchResponse.getNextPageToken(), items); 

但我仍然没有得到我期望的结果,而且我的排序不好(即:打1,打10,打11,打2等...)

在此先感谢!

回答

0

可以使用HTTP请求使用Search: list

GET https://www.googleapis.com/youtube/v3/search 

与添加到查询可选参数order

如文档中所讨论的,

顺序参数指定将要使用的API响应命令资源的方法。

可接受的值为:

  • 日期 - 基于其创建日期相反的顺序进行排序。
  • 评分 - 按最高评分排序。
  • 相关性 - 根据它们与搜索查询的相关性排序。这是此参数的默认值。
  • 标题 - 按标题按字母顺序排序。
  • videoCount - 频道按上传视频数量的降序排列。
  • viewCount - 从最高到最低的视图数量排序。对于直播节目,在广播正在进行时,视频按并发观看者的数量排序。
相关问题