bluetooth spp安卓开发

10 篇文章 0 订阅
在开发有关Android的蓝牙SPP服务时,发现了一点问题,需要注意的是,在连接SPP服务的时候,有可能直接调用connect会出现Exception的问题,因此,对于SPP的服务应当有两种实现比较保险,SPP的服务特征码(UUID): 
00001101-0000-1000-8000-00805F9B34FB

贴出我对于连接SPP的实现,做个记录以供以后使用:

public void connect(String address, Callback.ConnectCallback callback) {
    try {
        //在连接某个设备时务必检测并且关闭蓝牙设备搜索,否则会使连接过久甚至失败
        cancelDiscovery();
        BluetoothDevice tmpDev = btAdapter.getRemoteDevice(address);
        Method m = tmpDev.getClass().
                getMethod("createRfcommSocket", int.class);
        btSocket = (BluetoothSocket) m.invoke(tmpDev, 1);
        btSocket.connect();
    } catch (IOException ioe) {
        callback.onFail();
        callback.onError("出现异常: " + ioe);
    } catch (NoSuchMethodException e) {
        e.printStackTrace();
    } catch (IllegalAccessException e) {
        e.printStackTrace();
    } catch (InvocationTargetException e) {
        e.printStackTrace();
    }
}

其他的无关代码可以忽略!

学无止境,应当沉下心来慢慢思考,戒骄戒躁,闷声发大财!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值