我刚才试了试没问题 小米13,android 14 miui 最新,微信 8.0.42
微信浏览器,H5的video播放器加载不到m3u8视频资源,导致播放失败,是微信版本问题吗?怎么解决经测试,手机型号魅族E3,安卓版本7.1.1,微信版本8.0.42和8.0.43播放会有问题,8.0.34和8.0.40播放没问题。 QQ浏览器能加载到视频时长,但是视频也会播放失败,测试了其他的浏览器没问题,比如:魅族自带浏览器、百度浏览器、谷歌浏览器。 苹果微信也没问题,只有部分安卓微信打开会有问题。 开发使用的是video.js,视频资源是m3u8格式。 有问题的H5地址:http://wjjh5.cnlive.com/cnShareVideo.html?videoId=1033_2593ceed8b07439abbada07d8c75c621&contentId=935955
2023-11-15onShow,每次页面切换都会显示时都会执行 上面代码,在 onshow 里执行了初始化适配器,在回调里注册了监听适配器开关,多次 onshow,会多次初始化,会多次注册监听。 onBluetoothAdapterStateChange 放在 onLoad 里试试
关于蓝牙的问题 wx.onBluetoothAdapterStateChangewx.onBluetoothAdapterStateChange关键代码如下 [代码]Page({ onshow(){ wx.openBluetoothAdapter({ complete: (res) => { console.error('openBluetoothAdapter complete', res); wx.onBluetoothAdapterStateChange((res) => { console.error('onBluetoothAdapterStateChange callback', res); }); } } });[代码]Android手机:如果手机蓝牙是关闭的,然后用户再来回切换操作系统的蓝牙开关,始终不会打印[代码]onBluetoothAdapterStateChange callback[代码] Android手机:如果手机蓝牙是开启的,然后用户再来回切换操作系统的蓝牙开关,可以正常打印[代码]onBluetoothAdapterStateChange callback[代码] Android手机:如果手机蓝牙是开启的,然后退出小程序(点击微信左上角的“X”按钮),然后再进来,重复步骤循环几次,然后切换操作系统的蓝牙开关,发现会重复(就是注册总次数)打印:[代码]onBluetoothAdapterStateChange callback[代码] IPhone无以上问题 结论Android手机一定要[代码]wx.openBluetoothAdapter[代码]成功一次以后才能正常监听[代码]wx.onBluetoothAdapterStateChange[代码],而且存在[代码]onBluetoothAdapterStateChange[代码]重复注册问题 IPhone 操作正常 建议Android 跟 Iphone 手机保持一致,理论上 [代码]wx.onBluetoothAdapterStateChange[代码]是用来监听蓝牙状态的,与用户[代码]wx.openBluetoothAdapter[代码]是否成功无关 蓝牙功能可否跟[代码]获取地位信息[代码]和[代码]获取用户信息[代码]一样,开发者根据业务需要调用蓝牙API,用户来选择[代码]允许[代码]或者[代码]拒绝[代码]
2023-11-05是有这毛病,发愁,监听手机蓝牙设置开关挺不错,但是同时还监听了探索状态,开始探索和探索结束都有这个回调,写判断也绕不开这个问题,光判断 available 不行,加上 discovering 也不行。discovering 为 true 或 false ,available 都肯定为 true // 是否初始化成功 var initSuccess = false; wx.openBluetoothAdapter({ success: res => { initSuccess = true; }, fail: error => { initSuccess = false; } }) wx.onBluetoothAdapterStateChange(function (res) { console.log('adapterState changed, now is', res) // 适配器打开 if (res.available && !res.discovering && !initSuccess) { console.log('deviceManage 手机蓝牙打开') } // 适配器关闭 if (!res.available) { console.log('deviceManage 手机蓝牙关闭') initSuccess = false } // 适配器打开并且处于搜索状态 if (res.available && res.discovering) { console.log('deviceManage 处于搜索状态') } // 适配器打开并且处于停止搜索状态 if (!res.discovering && initSuccess) { console.log('deviceManage 停止搜索状态') } }) 我都服了,总算给闭环了。
wx.onBluetoothAdapterStateChange这个监听。我是只想监听到蓝牙?wx.onBluetoothAdapterStateChange这个监听里面我是只想监听蓝牙是否打开,不需要监听到蓝牙是否处于搜索状态,请问有什么方法?
2023-11-05我是 h5 拨打电话,出现 actionsheets 菜单后不管选什么,actionsheets 菜单消失后,h5页面都不能点击了,好像是有层遮罩挡住了,这时候如果手机操作返回一次就正常了。
微信H5页面卡死的问题微信调用支付成功之后关闭页面,然后立马调用分享的接口,页面会直接卡死动不了,但是JS什么的还是正常在运行
2023-05-07有用,它会返回手机支持的最大单元(我的猜想),不知道咱们两个说的是不是一个意思,我是这么做的。 wx.onBLEMTUChange(function (res) { console.log('bluetooth mtu is', res.mtu) wx.setBLEMTU({ deviceId: device.deviceId, mtu: res.mtu, success(mtu) { console.log('设置最大传输单元成功 :', mtu) }, fail(error) { console.warn('设置最大传输单元失败!', error) } }); }) // 协商设置蓝牙低功耗的最大传输单元 (Maximum Transmission Unit, MTU)。需在 wx.createBLEConnection 调用成功后调用。仅安卓系统 5.1 以上版本有效,iOS 因系统限制不支持。 wx.setBLEMTU({ deviceId: device.deviceId, mtu: 400, success(mtu) { console.log('设置最大传输单元成功 :', mtu) }, fail(error) { console.warn('设置最大传输单元失败!', error) } }); 先走的:onBLEMTUChange,返回 247(我手机小米 13),然后再走的 setBLEMTU 报错,最后走的 onBLEMTUChange 里的 setBLEMTU 成功。 又完善了一下代码: /** * 协商设置蓝牙低功耗的最大传输单元 (Maximum Transmission Unit, MTU)。需在 wx.createBLEConnection 调用成功后调用。仅安卓系统 5.1 以上版本有效,iOS 因系统限制不* 支持。 * setBLEMTU 和 onBLEMTUChange 回调流程:先走 onBLEMTUChange 返回 247(我手机小米 13),然后再走的 setBLEMTU 报错,最后走的 onBLEMTUChange 里的 setBLEMTU 成功。 * 注:onBLEMTUChange 先注册相当于监听函数,当 setBLEMTU 执行后才走 callBack * @param {String} deviceId 设备id * @param {Number} expectedValue 期望值 */ function setBLEMTU(deviceId, expectedValue) { function _setBLEMTU(mtu) { wx.setBLEMTU({ deviceId, mtu, success(mtu) { console.log('setBLEMTU 设置最大传输单元成功 :', mtu) }, fail(error) { console.warn('setBLEMTU 设置最大传输单元失败!', error) } }) } wx.onBLEMTUChange(function (res) { console.log('onBLEMTUChange mtu is', res.mtu) // 每包最大数。这个 res.mtu 应该是当前设备的最大值,我尝试,小米 13 是 247,当我传 248 就会设置报错。 packageSize = res.mtu; // 期望值设置不成功就用 onBLEMTUChange 返回的最大值?设置 _setBLEMTU if (res.mtu !== expectedValue) { _setBLEMTU(res.mtu) } }); // 先尝试设置期望值 _setBLEMTU(expectedValue); } // test 1 setBLEMTU(500); // 结果 1、先 onBLEMTUChange 监听到,返回 res.mtu ,报 "setBLEMTU 设置最大传输单元失败!",再报 "setBLEMTU 设置最大传输单元成功 :" // test 2 setBLEMTU(247); // 结果 1、先 onBLEMTUChange 监听到,返回 res.mtu ,报 "setBLEMTU 设置最大传输单元成功 :"
设置MTU,wx.onBLEMTUChange并不会把最终协商的MTU回调。感觉这个api完全就没有https://developers.weixin.qq.com/miniprogram/dev/api/device/bluetooth-ble/wx.onBLEMTUChange.html
2023-01-10试过 setUint16 没?
微信小程序蓝牙发送数据分包后setuint8超过255个字节如何处理?我是将一个1到1024的整数通过微信小程序蓝牙发送,它到255就终止了,256-1024的数没有发送出去,而且一直循环发送0-255?请问我该怎么办?还要在处理一次分255为一次再处理吗 ?求大佬教我 [图片]
2021-06-30合法域名这样配置对吗? [图片]
wxfile 不能上传?wx.chooseImage({ count: 1, sizeType: ['original', 'compressed'], sourceType: ['album', 'camera'], success(res) { console.log('chooseImage',res) // tempFilePath可以作为img标签的src属性显示图片 // const tempFilePaths = res.tempFilePaths wx.uploadFile({ url: app.globalData.api.chuantu, //仅为示例,非真实的接口地址 filePath: res.tempFilePaths[0], name: '', header: app.globalData.api.header, formData: {}, success(res) { console.log('uploadFile', JSON.stringify(res)) 选择完图片后,走 uploadFile 没反映,res.tempFilePaths[0] 值是 wxfile://temp_.....jpg 这种,正式版也不能上传 upload 都没反应, 但是在开发工具中可以上传,但是开发工具中返回的是 http://tmp/这种,请问这是怎么回事??
2021-01-06你也是罪了,以前可以着,准是微信开发人员瞎鼓捣导致的?发现毛病了,我这是开发号,如果我把提交的二维码发给“主账号”,他用手机扫描识别图片里的二维码,手机里提示成功,但是页面不成功,如果主账号直接在网页上扫描就没事,也就是说,主账号直接用微信的扫一扫图片就没事,这玩意闹的,也不知道是咋回事。
小程序提交发布后没反应版本没上去[图片] [图片]
2020-11-13看看是不是有正则中包含了 <=,反正我这个是这问题。
IOS打开小程序白屏- 当前 Bug 的表现(可附上截图) [图片] 打开小程序白屏,没有任何请求到服务端,网络无问题
2020-11-12