我正在尝试在我的应用程序中编写一个轻量级的 HTTP
服务器,以便向内置的 Android
MediaPlayer
动态提供生成的无限长度的 MP3
数据。但是我不能将内容存储在 SD 卡
上。
我的输入数据基本上长度无限。我告诉 MediaPlayer
它的数据源应该像这样:"http://localhost/myfile.mp3"
。我设置了一个简单的服务器来等待 MediaPlayer
发出此请求。但是 MediaPlayer
不太合作。起初它会发出 HTTP GET
并尝试抓取整个文件。如果我们尝试简单地将数据转储到套接字中,它会超时。因此我们尝试使用 HTTP
范围头将数据分块写入。但是,MediaPlayer
不喜欢这样做,并且不会继续请求后续的块。
有人成功过直接将数据流式传输到 MediaPlayer
吗?我需要实现一个 RTSP
或者 Shoutcast
服务器吗?我是否只是缺少了关键的 HTTP header
?我应该采用什么策略?