我正在研究涉及蓝牙和Android操作系统的研究项目.我需要无限期地发现蓝牙,以便项目继续进行.
问题:
我正在尝试/尝试过:
致命:远程端意外挂断
正如您可能想象的那样,上述两个问题是有问题的,并且处理起来非常令人沮丧.
更多信息:
大问题:
请参阅以下链接:http: //developer.android.com/guide/topics/wireless/bluetooth.html#ConnectingDevices
具体而言,下段中的最后一句:
启用可发现性
如果您希望本地设备可被其他设备发现,请startActivityForResult(Intent, int)使用ACTION_REQUEST_DISCOVERABLEIntent操作进行调用.这将通过系统设置发出启用可发现模式的请求(不停止您的应用程序).默认情况下,设备将在120秒内被发现.您可以通过添加EXTRA_DISCOVERABLE_DURATIONIntent extra 来定义不同的持续时间.应用程序可以设置的最长持续时间为3600秒,值为0表示设备始终可被发现.
所以,这应该工作:
Intent discoverableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
discoverableIntent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 0);
startActivity(discoverableIntent);
Run Code Online (Sandbox Code Playgroud)
如果你查看BluetoothAdapter类
你会发现隐藏的方法:
public void setDiscoverableTimeout(int timeout)
Run Code Online (Sandbox Code Playgroud)
现在您只需了解如何使用它即可。您必须执行方法调用才能执行此操作。
| 归档时间: |
|
| 查看次数: |
12084 次 |
| 最近记录: |