setListener 设置监听器 app开发实现NFC近场通信能力

setListener 设置监听器 app开发实现NFC近场通信能力

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

setListener 设置监听器 app开发实现NFC近场通信能力

如需接口调用事件,请设置此监听器;

核心代码示例,详情参阅demo

//支持 Android & iOS
//请设置此监听器监听读写数据和事件
jsBridge.nfc.setListener(function(event, data) {if (event == "NDEF_DISCOVERED")
  show({
    event: event,
    data : data
  });
});

//请拉到页面底部查看回调数据信息
$('html,body').animate({ scrollTop: $('#view').offset().top }, 500);

/**
回调参数说明:
event - 事件代码,字符串类型,可能的值:

  //将设备靠近 NFC 标签时会自动读取数据
  //数据在 data 参数中返回
  NDEF_DISCOVERED            发现了 NDEF TAG 标签
  NDEF_SESSION_INVALIDATED   NDEF 会话已失效(仅支持 iOS,如需再次读取需再次调用 enableForegroundDispatch 接口)
  TECH_DISCOVERED            发现了支持特定技术的 TAG 标签
  TAG_DISCOVERED             发现了 TAG 标签

  //写入 NDEF TAG
  //写入操作的数据是一次性的
  //写入成功、失败或取消后都会清除待写入的数据,如需再次写入需调用 write 接口重新准备写入的数据
  NDEF_PENDING_WRITE     待写入数据(请将设备靠近 NFC 标签)
  NDEF_WRITE_SUCCESS     写入成功
  NDEF_WRITE_FAILED      写入失败
  NDEF_WRITE_CANCELED    取消写入(设备靠近 NFC 标签时不再写入)

  //只读 NDEF TAG
  //只读操作是一次性的
  //只读操作成功、失败或取消后都会清除只读操作,如需再次执行只读操作需调用 makeReadOnlyNdef 接口重新准备只读操作
  NDEF_PENDING_MAKE_READ_ONLY    待执行置为只读的操作(请将设备靠近 NFC 标签)
  NDEF_MAKE_READ_ONLY_SUCCESS    置为只读成功
  NDEF_MAKE_READ_ONLY_FAILED     置为只读失败
  NDEF_MAKE_READ_ONLY_CANCELED   取消执行置为只读的操作(设备靠近 NFC 标签时不再执行置为只读的操作)

  //写入 MifareUltralight TAG Page
  //写入操作的数据是一次性的
  //写入成功、失败或取消后都会清除待写入的数据
  MIFAREULTRALIGHT_PENDING_WRITE_PAGE     待写入分页数据(请将设备靠近 NFC 标签)
  MIFAREULTRALIGHT_WRITE_PAGE_SUCCESS     分页写入成功
  MIFAREULTRALIGHT_WRITE_PAGE_FAILED      分页写入失败
  MIFAREULTRALIGHT_WRITE_PAGE_CANCELED    取消分页写入(设备靠近 NFC 标签时不再写入)
  //收发 MifareUltralight TAG 原始数据
  //收发操作的数据是一次性的
  //收发成功、失败或取消后都会清除待发送的数据
  MIFAREULTRALIGHT_PENDING_TRANSCEIVE     待收发数据(请将设备靠近 NFC 标签)
  MIFAREULTRALIGHT_TRANSCEIVE_SUCCESS     收发成功
  MIFAREULTRALIGHT_TRANSCEIVE_FAILED      收发失败
  MIFAREULTRALIGHT_TRANSCEIVE_CANCELED    取消收发(设备靠近 NFC 标签时不再发送)

data  - 事件数据,JSON 对象
**/

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
//支持 Android & iOS
//请设置此监听器监听读写数据和事件
jsBridge.nfc.setListener(function(event, data) {if (event == "NDEF_DISCOVERED")
  show({
    event: event,
    data : data
  });
});

//请拉到页面底部查看回调数据信息
$('html,body').animate({ scrollTop: $('#view').offset().top }, 500);

/**
回调参数说明:
event - 事件代码,字符串类型,可能的值:

  //将设备靠近 NFC 标签时会自动读取数据
  //数据在 data 参数中返回
  NDEF_DISCOVERED            发现了 NDEF TAG 标签
  NDEF_SESSION_INVALIDATED   NDEF 会话已失效(仅支持 iOS,如需再次读取需再次调用 enableForegroundDispatch 接口)
  TECH_DISCOVERED            发现了支持特定技术的 TAG 标签
  TAG_DISCOVERED             发现了 TAG 标签

  //写入 NDEF TAG
  //写入操作的数据是一次性的
  //写入成功、失败或取消后都会清除待写入的数据,如需再次写入需调用 write 接口重新准备写入的数据
  NDEF_PENDING_WRITE     待写入数据(请将设备靠近 NFC 标签)
  NDEF_WRITE_SUCCESS     写入成功
  NDEF_WRITE_FAILED      写入失败
  NDEF_WRITE_CANCELED    取消写入(设备靠近 NFC 标签时不再写入)

  //只读 NDEF TAG
  //只读操作是一次性的
  //只读操作成功、失败或取消后都会清除只读操作,如需再次执行只读操作需调用 makeReadOnlyNdef 接口重新准备只读操作
  NDEF_PENDING_MAKE_READ_ONLY    待执行置为只读的操作(请将设备靠近 NFC 标签)
  NDEF_MAKE_READ_ONLY_SUCCESS    置为只读成功
  NDEF_MAKE_READ_ONLY_FAILED     置为只读失败
  NDEF_MAKE_READ_ONLY_CANCELED   取消执行置为只读的操作(设备靠近 NFC 标签时不再执行置为只读的操作)

  //写入 MifareUltralight TAG Page
  //写入操作的数据是一次性的
  //写入成功、失败或取消后都会清除待写入的数据
  MIFAREULTRALIGHT_PENDING_WRITE_PAGE     待写入分页数据(请将设备靠近 NFC 标签)
  MIFAREULTRALIGHT_WRITE_PAGE_SUCCESS     分页写入成功
  MIFAREULTRALIGHT_WRITE_PAGE_FAILED      分页写入失败
  MIFAREULTRALIGHT_WRITE_PAGE_CANCELED    取消分页写入(设备靠近 NFC 标签时不再写入)
  //收发 MifareUltralight TAG 原始数据
  //收发操作的数据是一次性的
  //收发成功、失败或取消后都会清除待发送的数据
  MIFAREULTRALIGHT_PENDING_TRANSCEIVE     待收发数据(请将设备靠近 NFC 标签)
  MIFAREULTRALIGHT_TRANSCEIVE_SUCCESS     收发成功
  MIFAREULTRALIGHT_TRANSCEIVE_FAILED      收发失败
  MIFAREULTRALIGHT_TRANSCEIVE_CANCELED    取消收发(设备靠近 NFC 标签时不再发送)

data  - 事件数据,JSON 对象
**/

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
//支持 Android & iOS
//请设置此监听器监听读写数据和事件
jsBridge.nfc.setListener(function(event, data) {if (event == "NDEF_DISCOVERED")
  show({
    event: event,
    data : data
  });
});

//请拉到页面底部查看回调数据信息
$('html,body').animate({ scrollTop: $('#view').offset().top }, 500);

/**
回调参数说明:
event - 事件代码,字符串类型,可能的值:

  //将设备靠近 NFC 标签时会自动读取数据
  //数据在 data 参数中返回
  NDEF_DISCOVERED            发现了 NDEF TAG 标签
  NDEF_SESSION_INVALIDATED   NDEF 会话已失效(仅支持 iOS,如需再次读取需再次调用 enableForegroundDispatch 接口)
  TECH_DISCOVERED            发现了支持特定技术的 TAG 标签
  TAG_DISCOVERED             发现了 TAG 标签

  //写入 NDEF TAG
  //写入操作的数据是一次性的
  //写入成功、失败或取消后都会清除待写入的数据,如需再次写入需调用 write 接口重新准备写入的数据
  NDEF_PENDING_WRITE     待写入数据(请将设备靠近 NFC 标签)
  NDEF_WRITE_SUCCESS     写入成功
  NDEF_WRITE_FAILED      写入失败
  NDEF_WRITE_CANCELED    取消写入(设备靠近 NFC 标签时不再写入)

  //只读 NDEF TAG
  //只读操作是一次性的
  //只读操作成功、失败或取消后都会清除只读操作,如需再次执行只读操作需调用 makeReadOnlyNdef 接口重新准备只读操作
  NDEF_PENDING_MAKE_READ_ONLY    待执行置为只读的操作(请将设备靠近 NFC 标签)
  NDEF_MAKE_READ_ONLY_SUCCESS    置为只读成功
  NDEF_MAKE_READ_ONLY_FAILED     置为只读失败
  NDEF_MAKE_READ_ONLY_CANCELED   取消执行置为只读的操作(设备靠近 NFC 标签时不再执行置为只读的操作)

  //写入 MifareUltralight TAG Page
  //写入操作的数据是一次性的
  //写入成功、失败或取消后都会清除待写入的数据
  MIFAREULTRALIGHT_PENDING_WRITE_PAGE     待写入分页数据(请将设备靠近 NFC 标签)
  MIFAREULTRALIGHT_WRITE_PAGE_SUCCESS     分页写入成功
  MIFAREULTRALIGHT_WRITE_PAGE_FAILED      分页写入失败
  MIFAREULTRALIGHT_WRITE_PAGE_CANCELED    取消分页写入(设备靠近 NFC 标签时不再写入)
  //收发 MifareUltralight TAG 原始数据
  //收发操作的数据是一次性的
  //收发成功、失败或取消后都会清除待发送的数据
  MIFAREULTRALIGHT_PENDING_TRANSCEIVE     待收发数据(请将设备靠近 NFC 标签)
  MIFAREULTRALIGHT_TRANSCEIVE_SUCCESS     收发成功
  MIFAREULTRALIGHT_TRANSCEIVE_FAILED      收发失败
  MIFAREULTRALIGHT_TRANSCEIVE_CANCELED    取消收发(设备靠近 NFC 标签时不再发送)

data  - 事件数据,JSON 对象
**/

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

编辑:yimen,如若转载,请注明出处:https://www.yimenapp.com/kb-yimen/16025/

部分内容来自网络投稿,如有侵权联系立删

(0)
上一篇 2022年12月30日 上午11:03
下一篇 2022年12月30日 上午11:06

相关推荐