Привет!Служба не запускается в android
У меня есть служба, которая должна воспроизводить звуковой файл, когда он запускается из активности (щелчком по кнопке). Однако проблема заключается в том, что служба не запускается, когда я нажимаю нужную кнопку в своей деятельности.
Класс обслуживания (с импортом и некоторые другие методы опущены):
public class ClockService extends Service {
MediaPlayer myMediaPlayer;
@Override
public IBinder onBind(Intent arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onCreate() {
myMediaPlayer = MediaPlayer.create(this, R.raw.audio);
myMediaPlayer.setLooping(true);
}
@Override
public void onStart(Intent intent, int startid) {
myMediaPlayer.start();
}
}
Активность она вызывается из:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button startButton = (Button) findViewById(R.id.startButton);
startButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
startService(new Intent(getBaseContext(), ClockService.class));
}
});
}
}
Я боролся с ним в течение часа уже, и я не вижу, что случилось.
Спасибо? Но как мне это сделать? Я попытался передать MainActivity.getContext(), но он не работает. – geekkid
Контекстный контекст = MainActivity.this; затем передать этот контекстный объект в конструктор класса обслуживания и использовать его в сервисе. –
Вы ошибаетесь @ SharadMhaske.he можете сделать это.Пожалуйста, см. Мой ответ. –