时间:2019-05-04 来源:小程序工厂
你好,10006是指当前连接已断开
10012的建议参考下面这个回答:
连接蓝牙打印机返回10012
https://developers.weixin.qq.com/blogdetail?action=get_post_info&docid=00024ab206c61032c3c6104845f400&highline=10012
设置超时时间后,可以正常建立连接了,可能是由于IOS连接快速,android稍慢导致超出接口默认超时时间。非常感谢!
但是在建立连接并获取serviceUUID后,通过制定serviceUUID获取特征时android报错10005,IOS正常,以下两图分别为anroid控制台日志和IOS控制台日志,方便的话请帮忙答复一下,再次感谢!
参考文档蓝牙连接错误码:
https://developers.weixin.qq.com/miniprogram/dev/api/bluetooth.html#%E8%93%9D%E7%89%99%E9%94%99%E8%AF%AF%E7%A0%81errcode%E5%88%97%E8%A1%A8
感谢以上回复。对应的错误代码都已查看,但是IOS链接正常,Android连接时报错,想问下是系统差异性,android版本的差异性,还是代码实现应该根据不同系统做出调整,亦或是android系统设置不正确
那你提供下代码片段我们这边看下,也提供下你说出现问题的机型,你上面提供的代码片段没有和连接蓝牙相关的呀
wechatide://minicode/WxsBjWmm6vZA
链接里的代码片段对应检测蓝牙状态=》发起BLE连接=》获取services=》获取对应service的特征值=》读取特征值
如果方便的话可以加下我微信:wxid_0gigbmw8izqv21
感谢!
补充一下说明:搜索设备在另外一个页面内完成,搜索到的设备保存在全局变量中,代码片段仅是连接与通讯。
安卓侧,每种机型连接速度不一致符合预期的,一般也是好的手机连接速度快点;
ps:安卓建立连接接口包含了发现服务的时间.
这里看聊天是获取特征值有问题?同样的接口ios没有问题是么..
答复2:是的,android使用微信6.6.7版本获取特征值失败,相同代码使用同微信版本IOS可以正常获取并通讯。
此外今天我测试了android微信6.6.5版本,可以获取到特征值(我在蓝牙设备上发起了2个特征值),只能读取到其中一个特征值对应的内容(内容如下图所示,返回特征值内容并不正确,我实际的值为:{"a":"192.168.1.157","b":"24","c":"192.168.1.201","d":"192.168.1.201","f":"222222"}),读取另外一个特征值时接口返回失败
抱歉,这里补充一下,测试机型均为HUAWEI P9 ,系统为android7.0
看上去比较像是客户端的问题,提供一下微信,我加一下你详细看看这个问题。
我微信:wxid_0gigbmw8izqv21
有劳了,多谢
Android无法连接双模的蓝牙设备,只能连接BLE设备。IOS都可以连接上。
回来结贴首先非常感谢Tummy的调试帮助!
主要两个问题,第一无法建立连接,第二无法获取特征值内容。关于问题一: 1.由于android设备对于应用有各种权限限制,所以在使用微信小程序的蓝牙API时请先赋予微信所有权限。