Android应用程序蓝牙可见持续时间



是否有一种方法可以让我的应用程序在运行时被发现?我试着用

来做这个
Intent discoverableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
discoverableIntent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 0);
startActivityForResult(discoverableIntent, DISC_DURATION);

显示在Android开发人员,但持续时间0不能工作,所以设置默认值120。有没有办法让它一直可见?

没有办法让蓝牙始终处于可发现状态。当你想找到一些新设备或其他设备可以找到你的设备时,你必须使它可发现。之后,你的设备将交换一个共享的MAC id,并将配对。

执行设备发现对于蓝牙适配器来说是一个繁重的过程,并且会消耗大量的资源。找到要连接的设备后,请确保在尝试连接之前总是使用cancelDiscovery()停止发现。此外,如果您已经与某个设备保持了连接,那么执行发现可能会大大减少该连接的可用带宽,因此您不应该在连接时执行发现。

查看更多信息

http://developer.android.com/guide/topics/wireless/bluetooth.html DiscoveringDevices

您无法将蓝牙设置为在任意2上连续可发现。* Android版本;请参阅此bug报告。这个限制似乎在3中被移除了。

我得出结论,我有三个设备。

ANDROID v 4.3及更高版本:EXTRA_DISCOVERABLE_DURATION 0工作没有限制ANDROIND v 4.1: EXTRA_DISCOVERABLE_DURATION 0是最大1小时。必须手动更改为参数无限制

最新更新