在我的音乐流程序中,如何在 android.media.MediaPlayer 类上设置代理以通过代理网络流式传输链接文件?我了解 HttpClient
、URLConnection
中的 NTCreditional、UsernamePasswordCreditional、Proxy-Authorization header 等。但我无法在 android.media.MediaPlayer
上设置代理,我该怎么办?
感谢您的提前:)
最佳答案
不幸的是,MediaPlayer API 目前没有提供现成的代理设置方法。
我该怎么做?
有一个可能的解决方法,但很脏:
- 使用您熟悉的任何技术(socket、httpClient 等)从 RemoteUrl
http://remotehost:80/music
下载媒体内容,并在此处正确处理代理身份验证。 - 在本地(在您的移动设备上)打开一个套接字,并将下载的数据写入该套接字的 OutputStream,我们真正想要的是将下载的内容重新发布到 localUrl
http://localhost:8081/music
在我们的移动设备上运行。 - 将此 localUrl 提供给您的 MediaPlayer:
mediaPlayer.setDataSource(localURL);
而不是mediaPlayer.setDataSource(remoteURL);
。
相关 Material :
希望这是有道理的。
关于android - 如何在 MediaPlayer 上设置代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10627278/