Я запускаю действие, которое воспроизводится из MediaPlayer из службы, и оно запускается нормально, но сразу вызывает onPause и уходит.Но если я не добавлю метод onPause () в Activity ... Mediaplayer проигрывается нормально, и представление корректно.Ниже мой код:
Сервис:
import android.content.Intent;
import android.util.Log;
public class ReminderService extends WakeReminderIntentService {
public ReminderService() {
super("ReminderService");
}
@Override
void doReminderWork(Intent intent) {
Log.d("ReminderService", "Doing work.");
Intent dialogIntent = new Intent(getBaseContext(), TestRec.class);
dialogIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplication().startActivity(dialogIntent);
}
}
TestRec.class:
import android.app.Activity;
import android.content.Context;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.view.Window;
import android.view.WindowManager;
public class TestRec extends Activity {
MediaPlayer mp;
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
requestWindowFeature(android.view.Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD
| WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
| WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
);
mp = MediaPlayer.create(this, R.raw.music);
mp.start();
}
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
mp.stop();
finish();
}
}