来自通知栏Intent的Android调用方法

时间:2012-09-07 13:55:35

标签: android android-intent android-mediaplayer android-notifications android-4.2-jelly-bean

我的android MainActivity.java类中有以下(简化)代码

case R.id.menu_stop:
    stopPlaying();
  return true;

如何在果冻豆通知中按下操作按钮时使用意图调用stopPlaying()?该通知是在我的StreamingService.java类中构建的。我可以通过电子邮件,电话和短信意图来启动操作按钮,我只是不知道如何在我的代码中调用方法。

我在stopPlaying()方法中的代码如下

private void stopPlaying() {
    Intent intent = new Intent(this, StreamingService.class);
    stopService(intent);
}

1 个答案:

答案 0 :(得分:1)

您需要使用广播/接收器设计模式。

这是一个很好的教程,可以帮助您入门:http://www.vogella.com/articles/AndroidBroadcastReceiver/article.html

基本上,您需要编写接收器并在服务中注册它。然后,当按下通知中的按钮时,您希望在服务的接收器等待时触发广播(这需要一个意图)。当它收到广播(基本上是即时的)时,它可以调用你的stopPlaying()方法。