私はソートのダウンロードサービスを作成しており、前回の部分ダウンロードを再開することができます。私は現在、私はちょうどテストを行なったし、それは入力ストリームに45メガバイトをスキップするのに約57秒の秒を要したこのhttpプロトコルで入力ストリームをシーク(スキップ)する最速の方法
long skipped = 0;
while (skipped < track.getCacheFile().length()){
skipped += is.skip(track.getCacheFile().length()-skipped);
}
ようskipメソッドを使用しています。特定のネイティブコードがこれをどのようにして行うのか、私は興味があります。例えば、メディアプレイヤーはリモートストリームのどの部分にも瞬時に求めることができます。私は同じライブラリにアクセスすることはできませんが、私は同様のことを達成できますか?
btw、そのテストはwifiで行われました。通常のデータネットワークでは明らかにはるかに遅いです。
アップデート:非常に単純な(以下のおかげで)
if (track.getCacheFile().length() > 0){
request.setHeader("Range","bytes="+track.getCacheFile().length()+"-");
}
よろしくお願いします。それを撃つ。 –