关于微信小程序调用NFC BUG!!!!

发布于 8 年前作者 xiuyinglai15043 次浏览最后编辑 8 年前来自 ask

我想利用NFC模块给卡片发一条指令

官方提供的示例代码:

wx.startHCE({
  success: function(res) {

   wx.onHCEMessage(function(res) {      

     if (res.messageType === 1) {

        wx.sendHCEMessage({data: buffer})      }    })  }

})

第一个问题:这个示例代码是先初始化NFC模块 调用wx.startHCE({})这个方法的实例参数不是要求有个aid_list参数 而且是必填

       这示例代码上并没有这个参数

第二个问题:我在一个带有NFC功能的 并在5以上的android系统上去跑这段代码 为什么进不到

         wx.onHCEMessage()这个方法里呢

10 回复
ogong
ogong1 楼6 年前

扫码成功的回调方法是可以发送网络请求的,你还是贴下代码看看是哪里出错了

jie67
jie672 楼6 年前

非常感谢,我原本也是想用手机读卡,原来不能当读卡设备!!!

jie84
jie843 楼6 年前

域名添加后,重启开发工具就立即生效了,如果不添加域名,是会报错的

lei98
lei984 楼6 年前

请问你wx.onHCEMessage()这个方法调通了吗?

taoxu
taoxu5 楼6 年前

你可以在手机上打开调试,看看打印什么错误

jun87
jun876 楼6 年前

问题就在于域名没添加并没有报错啊 你看我请求失败的函数有弹框 完成也有弹框 都没显示出来 感觉请求都没走

leijie
leijie7 楼6 年前

看下小程序后台是否添加了域名白名单

chaoxue
chaoxue8 楼6 年前

getResidengMsg:function(){

    wx.scanCode({

        onlyFromCamera:false,

        scanType: [‘qrCode’,‘barCode’],

        success:function(res){

            wx.showToast({

                title: res.result,

            })

            wx.request({

                url: http://zjjzz.eastcompeace.com/test-rc/das/appctrl/rcQrCodeAuth,

                data: {

                    ‘auth’: {

                    ‘keyIndex’: ‘0’,

                    ‘randomNum’: ‘2f8d3cb321d046ac’,

                    ‘randomNumEnc’: ‘2E1E933814508B38’

                    },

                ‘data’: {

                    ‘fromCompany’: ‘guangxin’,

                    ‘areaCode’: ‘330604’,

                    ‘devID’: ‘WeChatXCX000001’,

                    ‘merchantCode’: ‘’,

                    ‘qrCode’: res.result,

                    ‘requestTime’: this.getTime(new Date())

                    }

                },

                header: {

                ‘content-type’: ‘application/json’ // 默认值

                },

                method: “POST”,

                success: function (res) {

                    wx.showToast({

                        title: res.data.message

                    })

                },

                fail: function (res) {

                    wx.showModal({

                        title: ‘失败’,

                        content: res.errMsg,

                        })

                },

            complete:function(res){

                wx.showModal({

                    title: ‘完成’,

                    content: res.errMsg,

                })

            }

        })

       }

    })

 }

在开发者工具上这个url可以请求到,但是在真机上预览这个url可能请求不到 但是请求里应该会进到失败的回调里吧 但是预览 什么都没有弹出来

li59
li599 楼6 年前

我稍前已经添加了 但是应该要24小时才能生效 如果没添加域名白名单 那是不是应该会报错啊老铁

xiayi
xiayi10 楼6 年前

如果我不把情求放在 wx.scanCode()的成功的回调里  请求是正常的 放在wx.scanCode()的成功的回调里请求里什么都不报,我怀疑扫描成功回调里不能发送请求,老铁有空可以做个试验