广播接收器和音乐

时间:2012-12-18 10:26:00

标签: android sms media-player

我创建了一个简单的BroadcastReceiver,对收到的SMS做出反应。

一条消息应该能够启动警报而另一条消息应该能够停止警报。警报由mediaPlayer触发,效果很好。但我无法阻止它。我知道每次收到正确的mediaplayer时都会创建SMS的新实例,但即使使用单身,我也无法使其正常工作......

以下是代码段:

Bundle myBundle = intent.getExtras();
SmsMessage [] messages = null;
String strMessage = "";

if (myBundle != null)
{
    Object [] pdus = (Object[]) myBundle.get("pdus");
    messages = new SmsMessage[pdus.length];

    for (int i = 0; i < messages.length; i++)
    {
        messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
        strMessage += messages[i].getMessageBody();
    }

    if (strMessage.equals("ATELIO&SON")){
        if(onoff == 1){
        Toast.makeText(context, "Démarrage localisation sonore", Toast.LENGTH_LONG).show();
        playSound();
        }
    }
    else if(strMessage.equals("ATELIO&SON&FIN")){
        Toast.makeText(context, "Fin localisation sonore", Toast.LENGTH_LONG).show();
        stopSound();
    }
}

playsound()stopsound()是两种非常简单的方法,第一种是开始声音,第二种是检查mediaplayernull并采取相应的行动。

0 个答案:

没有答案