我在我的android服务类中放了一个广播接收器。到目前为止只有一个叫“接收器”。只有一个带有选择语句的广播接收器(如if else if
)更好吗?我可以在Android服务类中放置多个广播接收器吗?
例如,此示例代码与我的工作代码类似。其中有一个'else if'语句来处理两个不同的意图广播:
public BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent){
String action = intent.getAction();
if(action.equals("com.test.AudioPlay")){
// action for play
Toast.makeText(AudioService.this, "play audio from service", Toast.LENGTH_LONG).show();
}
else if(action.equals("com.test.AudioPause")){
// action for pause
Toast.makeText(AudioService.this, "pause audio from service", Toast.LENGTH_LONG).show();
}
}
};
答案 0 :(得分:2)
如果您只使用一个具有不同动作的广播接收器,则对于所有动作将比不同的广播接收器更有效。
当我读到您正试图播放音乐播放器的开始,暂停和所有功能时,您应该将服务与您的活动绑定。 有关bound服务的更多信息,请参阅developer blog。