我正在开发一个应用程序,需要通过流式传输获取音乐文件,以进行实时播放。
在请求歌曲API中,我可以指定带宽(例如:50kbps、100kbps、300、600或1 Mbps)。
带宽越大,获取文件的时间就越长。由于我不希望用户受到限制,因此我有多种选择来处理这个问题:
检测手机是否使用3G、wifi或Edge,并为每种连接速度指定一个带宽。
让用户决定他将获得的歌曲质量:像YouTube一样(但用户不会是了解计算机知识的人:软件越简单,适合的用户就越多)
有一种方法能够正确评估连接速度:像获取文件一样,测量所花费的时间并设置带宽。
我知道,如果用户失去wifi,或者在街上使用3G移动,连接速度可能会变化很大。而且,当歌曲正在播放时,我无法更改带宽。
也许你有经验想要分享吗?
谢谢!
android.net.ConnectionManager
以了解设备的连接状态(无连接、移动网络、WiFi等)。 - Philipp Reichart