如何检测我使用蓝牙连接从一台设备发送到另一台设备的消息

How to detect message that i send from one device to another with bluetoth connect

我想从一台设备向另一台设备发送消息,我发送并在 Toast 上显示我的消息。我尝试这样做:

if(message.equals("mute")){
                if(IsAudioOn){
                    IsAudioOn = false;
                    amanager.setStreamMute(AudioManager.STREAM_MUSIC, false); // for unmute

                }else{
                    IsAudioOn = true;
                    amanager.setStreamMute(AudioManager.STREAM_MUSIC, true);  //for mute
                }

为设备制定当他收到一条典型消息时应该做什么的说明,但这没有用,

以下是我尝试从一台设备控制另一台设备的一些方法:

public void sendMessage(String message) {
    if (bBluetooth) {
        bt.send(message, true);
    } else {
        wiFiP2pService.sendData(message);
    }
}

这有效,我发送了字符串 MESSAGE,它以 TOAST 方法显示在另一台设备上。

这是我的数据接收器在第二台设备上

bt.setOnDataReceivedListener(new BluetoothSPP.OnDataReceivedListener() {
        public void onDataReceived(byte[] data, String message) {
            showToastMessage(message, 300);
            AudioManager amanager=(AudioManager)getSystemService(Context.AUDIO_SERVICE);
            if(message.equals("MUTE")){
                if(IsAudioOn){
                    IsAudioOn = false;
                    amanager.setStreamMute(AudioManager.STREAM_MUSIC, false); // for unmute

                }else{
                    IsAudioOn = true;
                    amanager.setStreamMute(AudioManager.STREAM_MUSIC, true);  //for mute
                }
            }else if(message.equals("VOLUME DOWN")){
                amanager.setStreamVolume(
                        AudioManager.STREAM_MUSIC,
                        amanager.getStreamMaxVolume(AudioManager.STREAM_MUSIC),
                        0);
            }
        }
    });

如你所见,我尝试检测

message.equals("string")

但这不起作用,感谢任何帮助..

根据 docsetStreamMute -

This method should only be used by applications that replace the platform-wide management of audio settings or the main telephony application.

如果您需要将设备上的所有声音静音,请查看 possible solutions 以了解该问题。