У меня есть класс обслуживания, который запускает мой медиаплеер, он работает нормально, моя единственная проблема в том, что когда мой сервис создает медиаплеер, он несколько приостанавливает мой пользовательский интерфейс, например зависает, или что-то подобное, пока мой медиаплеер не создаст его самостоятельно.Что я хочу, чтобы это произошло, так это то, что когда я нажимаю кнопку воспроизведения, появляется сообщение с тостом и отображается «Соединение», а когда медиаплеер готов, отображается сообщение с тостом «Подключено», а затем медиаплеер начинает воспроизводить музыку, так как мой тост не отображается, и если ониопоздал ..
вот мой сервисный код:
public class myservice extends Service {
MediaPlayer player;
private Handler UIHandler = new Handler();
private Uri source = Uri.parse("http://www.mydomain.com:8000/listen.mp3");
@Override
public IBinder onBind(Intent arg0) {
// TODO Auto-generated method stub
return null;
}
public void onCreate() {
Toast.makeText(this, "Connecting", Toast.LENGTH_SHORT).show();
player = MediaPlayer.create(this, source);
}
private void testtoast() {
Toast.makeText(this, "Connecting", Toast.LENGTH_SHORT).show();
}
public void onStart(Intent intent, int StartId) {
Toast.makeText(this, "Connected", Toast.LENGTH_SHORT).show();
player.setOnPreparedListener( new OnPreparedListener() {
public void onPrepared(MediaPlayer player) {
// TODO Auto-generated method stub
player.start();
}
});
}
public void onDestroy() {
Toast.makeText(this, "Destroyed", Toast.LENGTH_SHORT).show();
player.stop();
player.release();
}
}