2021-11-16 问题依旧存在
苹果不兼容notifyBLECharacteristicValueChange?在进行项目开发时,使用低功耗蓝牙进行设备对接开发; 在安卓平台多台测试机上已经测试OK,但是使用IOS平台进行测试时调用wx.notifyBLECharacteristicValueChange这个API时总是报错: errCode: 10004 errMsg: "notifyBLECharacteristicValueChange:fail setNotifyOnCharacteristics error 10004" 也就是服务不存在,但是serviceId是通过wx.getBLEDeviceServices获取的,所以如果有错应该安卓测试时也有错; 为了盘查问题所在,所以重新建了一个demo项目进行每一步的调用的独立测试,将获取到的deviceId,serviceId,characteristicId代入进行层别,发现依然是notifyBLECharacteristicValueChange报错10004; 所以,@微信小程序官方,是否v1.02.1907300 stable版本的小程序开发工具对IOS的部分蓝牙API不兼容,如果不兼容我该回退到什么版本比较合适?环境说明: 微信开发工具版本: v1.02.1907300 stable版本; 真机调试用机说明: 1. 机型 iphone 5 (操作系统IOS 10.0.1) 其他 iphone手机还没有尝试; 2. 机型 小米6 , nokia , vivo, oppo (Android操作系统覆盖从6.0到8.0,全部通过) 层别排查代码说明: (1)层别排查使用的index.js: //index.js //获取应用实例 const app = getApp() Page({ data: { motto: 'Hello World', userInfo: {}, hasUserInfo: false, canIUse: wx.canIUse('button.open-type.getUserInfo') }, //事件处理函数 bindViewTap: function() { wx.navigateTo({ url: '../logs/logs' }) }, onLoad: function () { if (app.globalData.userInfo) { this.setData({ userInfo: app.globalData.userInfo, hasUserInfo: true }) } else if (this.data.canIUse){ // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // 所以此处加入 callback 以防止这种情况 app.userInfoReadyCallback = res => { this.setData({ userInfo: res.userInfo, hasUserInfo: true }) } } else { // 在没有 open-type=getUserInfo 版本的兼容处理 wx.getUserInfo({ success: res => { app.globalData.userInfo = res.userInfo this.setData({ userInfo: res.userInfo, hasUserInfo: true }) } }) } }, getUserInfo: function(e) { console.log(e) app.globalData.userInfo = e.detail.userInfo this.setData({ userInfo: e.detail.userInfo, hasUserInfo: true }) }, openAdapter: function() { wx.openBluetoothAdapter({ success: function(res) { console.log('蓝牙适配开启成功') }, }) }, connectBle: function() { wx.createBLEConnection({ deviceId: 'B7F833D9-DE84-4093-8A25-B05859BFDB2A', success: function(res) { console.log('蓝牙连接创建成功') }, }) }, notifyBle: function() { wx.notifyBLECharacteristicValueChange({ deviceId: 'B7F833D9-DE84-4093-8A25-B05859BFDB2A', serviceId: '0000FEE7-0000-1000-8000-00805F9B34FB', characteristicId: '000036F6-0000-1000-8000-00805F9B34FB', state: true, success: function(res) { console.log('蓝牙特征值监听开启成功') }, fail: function(e) { console.log('蓝牙特征值监听开启失败:%s', e) console.dir(e) } }) }, openAdapter1: function () { wx.openBluetoothAdapter({ success: function (res) { console.log('蓝牙适配开启成功') }, }) }, connectBle1: function () { wx.createBLEConnection({ deviceId: '0C:1C:57:A8:BA:C4', success: function (res) { console.log('蓝牙连接创建成功') }, }) }, notifyBle1: function () { wx.notifyBLECharacteristicValueChange({ deviceId: '0C:1C:57:A8:BA:C4', serviceId: '0000FEE7-0000-1000-8000-00805F9B34FB', characteristicId: '000036F6-0000-1000-8000-00805F9B34FB', state: true, success: function (res) { console.log('蓝牙特征值监听开启成功') }, fail: function (e) { console.log('蓝牙特征值监听开启失败:%s',e) console.dir(e) } }) } }) (2)层别排查使用的wxml: <!--index.wxml--> <view class="container"> <view class="userinfo"> <button wx:if="{{!hasUserInfo && canIUse}}" open-type="getUserInfo" bindgetuserinfo="getUserInfo"> 获取头像昵称 </button> <block wx:else> <image bindtap="bindViewTap" class="userinfo-avatar" src="{{userInfo.avatarUrl}}" mode="cover"></image> <text class="userinfo-nickname">{{userInfo.nickName}}</text> </block> <button bindtouchend="openAdapter">IOS开启蓝牙适配</button> <button bindtouchend="connectBle">IOS创建蓝牙连接</button> <button bindtouchend="notifyBle">IOS开启特征监听</button> <button bindtouchend="openAdapter1">Android开启蓝牙适配</button> <button bindtouchend="connectBle1">Android创建蓝牙连接</button> <button bindtouchend="notifyBle1">Android开启特征监听</button> </view> <view class="usermotto"> <text class="user-motto">{{motto}}</text> </view> </view>
2021-11-16https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/page.html [图片] [图片] 建议新手先认真看一下文档,有问题的话也先查一下文档的相关内容,一般会有说明的
style 字段需为 v2 style 字段需为 string错误问题?[图片] 有没有大佬知道如何解决这个问题的呢?求助
2021-11-15都可以跳, 1.去小程序后台配置页面路径和参数生成 [图片] 2. h5 <!DOCTYPE html> <html lang="zh"> <head> <title>H5打开小程序</title> </head> <body> <p style="text-align: center">自动跳转小程序</p> </body> <script> location.href = "weixin://dl/business/?t=xxxxxxxxx"; </script> </html> 3.微信内部直接访问weixin://dl/business/?t=xxxxxxxxx,公众号网页本身支持跳转小程序,wx-open-launch-weapp
Url scheme已经可以从微信内跳转小程序了吗?[图片] [图片] 看文档服务端文档写的是 微信内 ,指南里写的是 微信外网页
2021-10-26看错误信息啊
小程序接口问题?小程序接口 本地测试没有问题 发布到线上之后直接走的就是失败回调是怎么回事
2021-10-261. 系统未开启定位 startBluetoothDevicesDiscovery:fail:location service is disabled 2.未授权定位权限 startBluetoothDevicesDiscovery:fail:location permission is denied 3. 两个都没开的情况,报未授权定位的错误 4.通过wx.getSystemInfo可以判断定位是否开启和是否授权 -- locationEnabled 地理位置的系统开关 -- locationAuthorized 允许微信使用定位的开关
wx.startBluetoothDevicesDiscovery报错 1509009?报错信息 startBluetoothDevicesDiscovery location service is disable [图片] 手机型号 OPPOa5
2021-10-26没试过这么多的,最多也就4,5包,我这边接收蓝牙打印也不少,只要不打开vConsole就不卡,一打开就贼卡,你可以试试接收但不处理看看是接收的问题还是处理数据的问题
小程序连接蓝牙后,接收蓝牙数据发包的频率有没有峰值?从而会导致小程序延时卡顿通过连接蓝牙监听特征值时,因为蓝牙每秒要发250条数据,分多个包发送,每个包发上限20条数据,(等于一秒内要接收10多个包),再解析buffer数据回调,因此我小程序端一直打印特征值后会导致小程序严重卡顿,页面按钮点击半天没反应,并且缓存机制的回调数据也会存在严重延时,不能实时更新数据
2021-10-26[图片] 使用 wx.createInnerAudioContext,在onEnded处理逻辑
wx.createAudioContext组件怎么设置自动播放完自动切换下一首播放?wx.createAudioContext组件怎么设置自动播放完自动切换下一首播放
2021-10-25https://developers.weixin.qq.com/s/BADGXjmd72ut [图片]
【仿星巴克小程序】关于下拉出现另一个页面的问题?星巴克小程序首页,下拉出现另一页面的效果如何制作,请大佬指教
2021-10-251. 系统未开启定位 startBluetoothDevicesDiscovery:fail:location service is disabled 2.未授权定位权限 startBluetoothDevicesDiscovery:fail:location permission is denied 3. 两个都没开的情况,报未授权定位的错误
startBluetoothDevicesDiscovery报 location(-1) 的问题?[图片] 这个是用户出现的,我一直怀疑是系统gps或者微信定位的问题 但是我这些都关了,依旧没有这个错误
2021-10-14wx.createAnimation可以动态修改
怎么动态修改 @keyframes?动画过程效果是动态的,因此需要动态修改@keyframes; 但,无法实现? 有没有变通的之法?
2021-09-15