【发布时间】:2020-07-25 12:28:48
【问题描述】:
我有一个不同质量的 .mp4 视频网址列表 [1080p、720p、360p]。我想使用 Exo 播放器在我的应用程序上播放视频,但根据用户的网络质量设置 URL。我该如何实现呢?
我的具体问题是查找用户的网络质量。
【问题讨论】:
标签: android video-streaming android-videoview exoplayer
我有一个不同质量的 .mp4 视频网址列表 [1080p、720p、360p]。我想使用 Exo 播放器在我的应用程序上播放视频,但根据用户的网络质量设置 URL。我该如何实现呢?
我的具体问题是查找用户的网络质量。
【问题讨论】:
标签: android video-streaming android-videoview exoplayer
您可以使用 ConnectivityManager 跟踪网络速度
ConnectivityManager manager=(ConnectivityManager)this.getSystemService(CONNECTIVITY_SERVICE);
NetworkCapabilities nc = manager.getNetworkCapabilities(manager.getActiveNetwork());
int downloadSpeed = nc.getLinkDownstreamBandwidthKbps();
int uploadSpeed = nc.getLinkUpstreamBandwidthKbps();
根据速度,您可以对要选择的图像进行分类。以下描述将帮助您确定网络速度是高、中还是低
POOR // Network Speed less than 150 kbps.
MODERATE // Network Speed between 150 and 550 kbps.
GOOD // Network Speed upto 2000 kbps.
EXCELLENT // Network Speed over 2000 kbps.
UNKNOWN // connection quality cannot be found.
【讨论】: