我想寫一個WCF服務,可以發送mp3文件到客戶端。我需要它使用漸進式下載傳輸MP3文件,因爲客戶端是一個Android應用程序,我希望它儘快開始播放。我如何使用WCF進行漸進式下載?可能嗎?wcf漸進式下載
這是我到目前爲止。這似乎工作,但它不是漸進式下載。它在Android應用程序中播放,但僅在整個文件被下載後播放。
服務合同:
[OperationContract, WebGet(UriTemplate = "/GetFileStream/?filepath={virtualPath}")]
Stream GetFileStream(string virtualPath);
服務配置:
<bindings>
<webHttpBinding>
<binding name="streamedHttpBinding" transferMode="StreamedResponse"
maxReceivedMessageSize="1000000000">
</binding>
</webHttpBinding>
</bindings>
<service name="...">
<endpoint address="" behaviorConfiguration="restful" binding="webHttpBinding"
bindingConfiguration="streamedHttpBinding"
contract="..." />
</service>
<behaviors>
<endpointBehaviors>
<behavior name="restful">
<webHttp />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
如果您可以提供鏈接到有關漸進式下載來源,這將是有幫助。對於漸進式下載+ wcf,我的Google搜索功能沒有太大的提升。感謝你的幫助。
的Android代碼:
player.reset();
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
player.setDataSource(path);
player.prepare();
player.start();
播放器是MediaPlayer對象。我將數據源設置爲路徑中的網址。
@nithin:你的Android應用程序如何嘗試訪問mp3文件?你使用什麼代碼? – Squonk 2011-04-18 19:53:38
@MisterSquonk我認爲android客戶端正常運行。查看更新後的問題中的代碼。 – Nithin 2011-04-18 20:07:29
@nithin:好的,爲什麼你的'service'結尾是用WCF編寫的嗎?你想要的效果可以通過一個簡單的HTTP服務來實現。 – Squonk 2011-04-18 20:29:19