Android Ble开发(一)

本文记录了一位互联网软件开发者初次接触物联网蓝牙开发的经历。从开发工具准备到遇到的各种问题及解决办法,包括查找服务UUID与特征UUID的方法、解决大数据写入问题、蓝牙连接兼容性和乱码回应等。

一、简述

一直从事应用层互联网软件开发,突然公司转型要做物联网,意味着一个新领域,一大堆坑即将来袭,花了几天时间,看了官方给的蓝牙代码,开始尝试首次与其握手。

准备开发工具,我用的是Studio2.3.3、gradle3.3,下载谷歌官方蓝牙代码,这边有硬件厂家提供的板子一块,也就是蓝牙芯片,都准备就绪了,下面开始进行联调。


二、前期遇坑

1、先找到相关的服务UUID与特征UUID,我这边是硬件方找到告诉我的。如果厂家没有告诉你,那么你只能挨个找,如何找,先运行谷歌官方代码,连上芯片的mac,他会出来一堆服务,每个服务下面有一堆特征,你给特征一个个给他发消息,哪个有回应,哪条服务就是你写数据用的。


2、两条UUID都已找到,开始进行数据读写,真是顺风顺水,突然之间让你发送一条40个字节,纳尼,板子无应答。。于是开始找问题,终于找到了。因为我们的蓝牙芯片,不支持大数据写入,超过25个字节,就要分包发送。。知道这一条,就信心满满,进行分包发送,觉得问题终于解决了。。下午测试部又提了2个bug,蓝牙连不上,app发指令后收到乱码。。。当时第一想法,肯定是板子的问题。。。后来进行调试,发现又是一个大坑。。蓝牙连不上是兼容问题,发指令收到混乱应答是因为推帧没推好,一下子点多下,板子给你发多个,指令都是一帧,多帧乱拼接。。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值