【发布时间】:2017-09-26 20:17:31
【问题描述】:
有没有办法让我的手机自动连接到配对设备,而不必每次都激活蓝牙?我想创建一个在后台运行的应用程序并连接到配对设备,即使蓝牙关闭。
if(device.getBondState()==device.BOND_BONDED){
Log.d(TAG,device.getName());
//BluetoothSocket mSocket=null;
try {
mSocket = device.createInsecureRfcommSocketToServiceRecord(MY_UUID);
} catch (IOException e1) {
// TODO Auto-generated catch block
Log.d(TAG,"socket not created");
e1.printStackTrace();
}
try{
mSocket.connect();
}
catch(IOException e){
try {
mSocket.close();
Log.d(TAG,"Cannot connect");
} catch (IOException e1) {
Log.d(TAG,"Socket not closed");
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
此代码将设备连接到已配对的设备,但用户每次都需要打开蓝牙才能使用我的应用程序。我需要知道是否有一种方法可以监听我配对的设备是否存在并连接到它而无需每次都打开蓝牙?
【问题讨论】:
-
你试过什么代码?或者您只是在询问如何使用您的设备?
-
我不知道从哪里开始编码,但我知道有一种方法可以自动连接到配对设备
-
根据我们的指南,我们不提供建议或基本文档。您需要携带一些代码和运行时遇到的特定错误。你有一个 hello world 应用程序正在运行吗?如果没有,我会从这种性质的教程开始。
-
我只是在下面的答案中做到这一点。
-
鉴于您的更新,如果蓝牙关闭,我看不出您如何判断附近是否有蓝牙设备。这就像在有信号时尝试打开收音机,但如果收音机关闭,你怎么知道有信号存在?
标签: android bluetooth communication