账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    微信jssdk 如何检测手机蓝牙是否开启,以及蓝牙状态更新
    46
    0

    问题描述

    微信jssdk 如何检测手机蓝牙是否开启,以及蓝牙状态更新

    问题出现的环境背景及自己尝试过哪些方法

    需要在项目中检测蓝牙的状态,尝试使用onWXDeviceBluetoothStateChange这个api,但是无法触发。

    相关代码

    wx.ready(() => {
    wx.on("onWXDeviceBluetoothStateChange", (data) => console.log("蓝牙改变", data));
    wx.invoke("openBluetoothAdapter", {
                    complete: () => {
                        wx.on("onWXDeviceBluetoothStateChange", (data) => console.log(data));
                    }
                });
    wx.invoke("getBluetoothAdapterState", {
                    complete: (data) => {
                        console.log("蓝牙状态", data);
                    }
                });
    })
    // 以上代码均无法触发,jsApiList以加入上述方法名。
    
    3
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 微信JSSDK并没有直接提供检测手机蓝牙状态或蓝牙状态更新的接口。微信小程序提供了蓝牙相关的API,但微信公众号JSSDK暂时没有相应的功能。

      如果你在开发微信小程序,可以参考以下方式:

      javascript // 获取蓝牙适配器 wx.getBluetoothAdapter({ success: function(res) { wx.onBluetoothAdapterStateChange(function(res) { // 蓝牙状态变化事件 if (res.available) { console.log('蓝牙已开启') } else { console.log('蓝牙已关闭') } }) // 检查蓝牙是否开启 wx.getBluetoothAdapterState({ success: function(res) { if (res.available) { console.log('蓝牙已开启') } else { console.log('蓝牙已关闭') } }, fail: function() { // 获取蓝牙状态失败 } }) }, fail: function() { // 获取蓝牙适配器失败 } })

      对于微信公众号H5页面,由于JSSDK目前不支持蓝牙操作,你可能需要借助其他方法间接提示用户打开蓝牙,比如引导用户通过系统设置或者自定义弹窗提示用户检查蓝牙状态。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部