干货|6招学会调用NFC的各个功能

现在越来越多的手机支持NFC功能,这种轻松、安全、迅速的通信的无线连接技术,能够让我们的手机替代门禁卡、公交卡、银行卡甚至是车钥匙,那么怎么让APP中能够调用这个功能呢?今天小编就来教给大家!

注意:

干货 6招学会调用NFC的各个功能


首先,注册并登录中控易动—提供APP一站式SaaS服务,点击右上方"控制台"-"应用项目"或"免费试用",创建完成进入应用,然后添加NFC插件


1.NDEF注册

为任何NDEF标签注册一个事件监听器

nfc.addNdefListener(callback, onSuccess, onFailure)

支持平台:

参数说明

干货 6招学会调用NFC的各个功能


onSuccess函数没有返回

onFailure函数会返回一个字符串,表示错误信息

示例代码

// 监听’deviceready‘事件
document.addEventListener('deviceready', onDeviceReady, false)
function onDeviceReady(){
    nfc.addNdefListener(
    function(nfcEvent){
    var tag = nfcEvent.tag;
    alert(JSON.stringify(nfcEvent.tag)); 
    alert(nfc.bytesToHexString(tag.id));
    },
    function(onSuccess) {
    alert(onSuccess);
    },
    function(error) {
    alert(error);
    }
    );
}


2.NDEF删除

移除通过nfc.addNdefListener添加的NDEF标签的以前注册的事件侦听器

nfc.removeNdefListener(callback, onSuccess, onFailure)

支持平台:

参数说明

干货 6招学会调用NFC的各个功能


onSuccess函数没有返回

onFailure函数没有返回

示例代码

// 监听’deviceready‘事件
document.addEventListener('deviceready', onDeviceReady, false)
function onDeviceReady(){
    nfc.removeNdefListener(
    function(nfcEvent){
    var tag = nfcEvent.tag;
    alert(JSON.stringify(nfcEvent.tag));
    },
    function(onSuccess) {
    alert(onSuccess);
    },
    function(onFailure) {
    alert(onFailure);
    }
    );
}

响应示例代码callback的返回数据:

{
    "type":"NDEF Push Protocol",
    "maxSize":"1",
    "ndefMessage":[
        {
            "tnf":1,
            "type":[
                1,
                2
            ],
            "id":[
                1,
                3,
                1
            ],
            "payload":[

            ]
        }
    ]
}


3.侦听器注册

注意

为匹配任何标签类型的标签注册事件侦听器

nfc.addTagDiscoveredListener(callback,onSuccess, onFailure)

支持平台:

参数说明

干货 6招学会调用NFC的各个功能


onSuccess函数返回一个字符串OK

onFailure函数返回一个字符串,表示错误信息

示例代码

// 监听’deviceready‘事件
document.addEventListener('deviceready', onDeviceReady, false)
function onDeviceReady(){
    nfc.addTagDiscoveredListener(
    function(nfcEvent){
    var tag = nfcEvent.tag;
    alert(JSON.stringify(nfcEvent.tag));
    alert(nfc.bytesToHexString(tag.id));
    },
    function(onSuccess) {
    alert(onSuccess);
    },
    function(onFailure) {
    alert(onFailure);
    }
    );
}

响应示例代码:

"OK"


4.侦听器删除

删除通过nfc.addTagDiscoveredListener添加的以前注册的事件侦听器

nfc.removeTagDiscoveredListener(callback, onSuccess, onFailure)

支持平台:

参数说明

干货 6招学会调用NFC的各个功能


onSuccess函数返回一个字符串OK

onFailure函数返回一个字符串,表示错误信息

示例代码

// 监听’deviceready‘事件
document.addEventListener('deviceready', onDeviceReady, false)
function onDeviceReady(){
    function callback(nfcEvent){
    var tag = nfcEvent.tag;
    alert(JSON.stringify(nfcEvent.tag));
    alert(nfc.bytesToHexString(tag.id));
    }
    nfc.removeTagDiscoveredListener(
    callback,
    function(onSuccess) {
    alert(JSON.stringify(onSuccess));
    },
    function(error) {
    alert(error);
    });
}

响应示例代码:

"OK"


5.NFC设置

在设备上显示NFC设置

nfc.showSettings(success,failure)

支持平台:

参数说明

干货 6招学会调用NFC的各个功能


success函数返回一个字符串OK

failure函数返回一个字符串错误信息

示例代码

// 监听’deviceready‘事件
document.addEventListener('deviceready', onDeviceReady, false)
function onDeviceReady(){
    nfc.showSettings(function(success){
    alert(success);
    },function(failure){
    alert(failure);
    });
}

响应示例代码:

"OK"


6.将NDEF消息写入NFC标签

注意

NDEF消息是一个或多个NDEF记录的数组

nfc.write(ndefMessage,success,failure)

支持平台:

参数说明

干货 6招学会调用NFC的各个功能


success函数返回一个字符串OK

failure函数返回一个字符串错误信息

示例代码

// 监听’deviceready‘事件
document.addEventListener('deviceready', onDeviceReady, false)
function onDeviceReady(){
    var message = [
      ndef.textRecord("hello, world"),
      ndef.uriRecord("http://github.com/chariotsolutions/phonegap-nfc")
      ];
    nfc.write(message,function(success){
    alert(success);
    },function(failure){
    alert(failure);
    });
}

响应示例代码:

"OK"

点击中控易动—提供APP一站式SaaS服务马上试试吧

展开阅读全文

页面更新:2024-04-25

标签:侦听器   干货   示例   字符串   函数   参数   消息   事件   代码   标签   功能   平台

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top