Android:获取是否有任何设备刚刚通过蓝牙连接到手机

时间:2018-11-27 10:13:25

标签: android bluetooth

我正在开发音乐播放器应用。当我上车并启动汽车时,汽车会自动通过Bluetooth连接,但是,ofc不会启动任何媒体播放。

我现在想做的是,如果有任何设备刚刚通过Bluetooth连接到我的手机上,以便开始播放音乐,请抓住我的应用程序。我在想的是:

1。)即时贴服务(始终启用)

2。)广播接收器(用于处理传入的意图)

但是我似乎找不到“只要通过BroadcastReceiver连接的任何设备”就会触发的任何Bluetooth

这就是我为BroadcastReceiver(尚未在服务中)尝试过的内容

[BroadcastReceiver]
public class BecomingNoisyReceiver : BroadcastReceiver
{
     public override void OnReceive(Context context, Intent intent)
     {
        //tests
        if (BluetoothA2dp.ActionConnectionStateChanged.Equals(intent.Action))
        {
            Activity_Player.Instance.PlayOrPauseLogic();
            Toast.MakeText(context, "0", ToastLength.Short).Show();
        }

        if (BluetoothA2dp.ActionPlayingStateChanged.Equals(intent.Action))
        {
            Activity_Player.Instance.PlayOrPauseLogic();
            Toast.MakeText(context, "1", ToastLength.Short).Show();
        }

        if (BluetoothAdapter.ActionConnectionStateChanged.Equals(intent.Action))
        {
            Activity_Player.Instance.PlayOrPauseLogic();
            Toast.MakeText(context, "2", ToastLength.Short).Show();
        }

        if (BluetoothAdapter.ActionDiscoveryFinished.Equals(intent.Action))
        {
            Activity_Player.Instance.PlayOrPauseLogic();
            Toast.MakeText(context, "3", ToastLength.Short).Show();
        }

        if (BluetoothAdapter.ActionStateChanged.Equals(intent.Action))
        {
            Activity_Player.Instance.PlayOrPauseLogic();
            Toast.MakeText(context, "4", ToastLength.Short).Show();
        }

        if (BluetoothDevice.ActionFound.Equals(intent.Action))
        {        
            Activity_Player.Instance.PlayOrPauseLogic();
            Toast.MakeText(context, "5", ToastLength.Short).Show();
        }

        if (BluetoothDevice.ActionPairingRequest.Equals(intent.Action))
        {
            Activity_Player.Instance.PlayOrPauseLogic();
            Toast.MakeText(context, "6", ToastLength.Short).Show();
        }

        if (BluetoothDevice.ActionAclConnected.Equals(intent.Action))
        {
            Activity_Player.Instance.PlayOrPauseLogic();
            Toast.MakeText(context, "7", ToastLength.Short).Show();
        }


    }
}

您看到我设置了吐司,以查看我的汽车连接到手机后会触发哪一个意图。不幸的是,没有。不过,我确实知道BroadcastReceiver肯定有效,因此这里肯定还有另一个问题。

这里有经验的人吗? 谢谢:)

0 个答案:

没有答案