我正在制作一个 Android 应用程序并在那里连接 YouTube API,我需要对我获得的视频进行排序。 例如:仅限长视频、普通视频和短视频。我是 YouTube API 的新手,我不知道该怎么做。
有人可以帮忙吗?
我的代码有一小部分:
RetroInstance 文件代码:
import retrofit2.Retrofit
import retrofit2.converter.gson.GsonConverterFactory
object RetroInstance {
fun retroInstance(): YoutubeService {
return Retrofit.Builder()
.baseUrl("https://www.googleapis.com/youtube/v3/")
.addConverterFactory(GsonConverterFactory.create())
.build()
.create(YoutubeService::class.java)
}
}
和Youtube服务代码:
import com.example.alaproapp.model.YoutubeModel
import retrofit2.*
import retrofit2.http.GET
import retrofit2.http.Query
interface YoutubeService {
@GET("search")
fun getAllData(
@Query("key") key: String = "key",
@Query("channelId") channelId: String = "UCHVY_-jY-FayjszyX1nlGtQ",
@Query("order") order: String = "date",
@Query("maxResults") maxResult: String = "1800",
@Query("part") part: String = "snippet,id"
): Call<YoutubeModel>
}
我尝试使用文档,但我之前提到过,我对此很陌生,而且我不明白该怎么做。
您应该在 /search 请求中添加另一个参数,以按短、中或长过滤视频。
@Query("videoDuration") part: String = "" // Value: long, medium, short, any
长 - 20 分钟以上
中 - 4-20 分钟
短 - <= 4 min
https://youtube.googleapis.com/youtube/v3/search?
part=snippet,id
&channelId=UCHVY_-jY-FayjszyX1nlGtQ
&maxResults=1800
&order=date
&type=video
&videoDuration=long
&key=[YOUR_API_KEY]
文档 https://developers.google.com/youtube/v3/docs/search/list