ОК, просто для потоковой передачи по HTTP.
Я создал виртуальную папку под названием «Музыка» с IIS на WinXP и указал ее на папку, содержащую mp3-файлы. Это полное действие, необходимое для потоковой передачи файла (имя жестко запрограммировано).
Кстати, он называется SimpleNetRadio, так как я изначально начал играть с потоками Shoutcast.
package com.mycompany.SimpleNetRadio;
import android.app.Activity;
import android.media.AsyncPlayer;
import android.media.AudioManager;
import android.net.Uri;
import android.os.Bundle;
public class SimpleNetRadio extends Activity
{
private AsyncPlayer ap = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
protected void onStart() {
super.onStart();
ap = (AsyncPlayer) getLastNonConfigurationInstance();
}
@Override
protected void onStop() {
super.onStop();
if (ap != null)
ap.stop();
}
@Override
protected void onResume() {
super.onResume();
if (ap == null) {
ap = new AsyncPlayer("Simple Player");
ap.play(this, Uri.parse("http://192.168.1.1/Music/02%20-%20Don't%20Stop%20Believin'.mp3"), true, AudioManager.STREAM_MUSIC);
}
}
@Override
public Object onRetainNonConfigurationInstance() {
return ap;
}
}
Вы также должны быть в состоянии сделать это с MediaPlayer с немного большим количеством кода - он будет лучше обрабатывать ошибки и не потребует намного больше работы.