mtlNFC

概述

mtlNFC 封装了应用内读取NFC卡片信息的功能。应用界面需要在前台并且打开手机NFC功能才能正常读取卡片信息。

2017年苹果在 WWDC 大会上 开放了 iOS11 读取 NDEF 标准格式的 NFC 功能,但只限于 iPhone 7 及以上的机型。

插件使用攻略

1,登录苹果开发者中心,配置包名(Bundle Identifier)申请 NFC 权限,如下图所示:

图片说明

2,创建 entitlements 文件,告诉 APICloud 云编译服务器 APP 申请访问 NFC 权限。配置详情参考论坛文档,示例如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>com.apple.developer.nfc.readersession.formats</key>
    <array>
        <string>NDEF</string>
    </array>
</dict>
</plist>

3,云编译时勾选、填写访问 NFC 提示语,如下图所示:

图片说明

init

打开NFC,读取卡片信息。设备NFC功能打开后,应用在前台时调用此方法可以读取卡片信息返回。

init(callback(ret,err))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status:      //是否成功
  id:          //status为true时返回卡片物理id
  msg:         //status为false时返回错误信息 
}

err:

  • 类型:JSON 对象
  • 描述:只支持iOS端
  • 内部字段:
{
    
   code: ,         //布尔类型;是否获取成功
    msg:,           //字符串类型;
}

示例代码

var mtlNFC = api.require('mtlNFC');
mtlNFC.init(function(ret,err) {
    if (ret.status) {
        alert(JSON.stringify(ret));
    }
})

可用性

Android系统,iOS系统

可提供的1.0.0及更高版本

unInit

使用完毕后需要调用此方法关闭

unInit()

示例代码

var mtlNFC = api.require('mtlNFC');
mtlNFC.unInit();

可用性

Android系统,iOS系统

可提供的1.0.0及更高版本

setTips

设置提示文案

setTips({params})

parames

tips:

  • 类型:字符串
  • 描述:(可选项)提示文案
  • 默认:"靠近手机背部开始识别"

tipsColor:

  • 类型:字符串
  • 描述:(可选项)提示文案字体颜色
  • 默认:"#000000",黑色

isShake:

  • 类型:布尔
  • 描述:(可选项)提示文案是否需要抖动效果
  • 默认: true

示例代码

var mtlNFC = api.require('mtlNFC');
mtlNFC.setTips({
    tips:"请重新扫描",
    tipsColor:"#ff0000",
    isShake:true
});

可用性

Android系统

可提供的1.0.2及更高版本

是否仍需要帮助? 请保持联络!
最后更新于 2024/07/22