MAUI读取NFC标签需分四步:平台配置、权限声明、插件集成、代码调用;iOS须配Info.plist中NFCReaderUsageDescription和com.apple.developer.nfc.readersession.formats,仅前台支持NDEF;Android需声明NFC权限并检查硬件开关;统一使用Plugin.NFC插件,初始化后调用StartReading监听OnTagRead事件,读取NdefMessage数据,iOS不支持写入。

MAUI 读取 NFC 标签需要分平台配置、权限声明、插件集成和代码调用四步走,iOS 和 Android 行为差异明显,不能共用一套逻辑直接运行。
iOS 平台必须先配 Info.plist
iOS 对 NFC 限制严格,即使代码写对,没加权限也会静默失败。需在 Platforms/iOS/Info.plist 中手动添加以下两项:
- NFCReaderUsageDescription:填写用户授权时显示的提示语,例如“用于读取门禁卡或产品信息”
-
com.apple.developer.nfc.readersession.formats:数组类型,至少包含
NDEF
注意:iOS 13+ 才支持 NDEF 读取,且仅限前台运行时可用;后台扫描不被允许。
Android 要开权限并处理系统兼容性
Android 端需在 Platforms/Android/AndroidManifest.xml 中声明:
<uses-permission android:name="android.permission.NFC"></uses-permission>-
<uses-feature android:name="android.hardware.nfc" android:required="false"></uses-feature>(设为 false 避免 Google Play 拒绝无 NFC 设备)
实际运行时还要检查设备是否开启 NFC 开关,并确保标签是 NDEF 格式——MIFARE Classic 等非标准格式需额外密钥认证,Plugin.NFC 默认不支持,得换用 MIFARE Classic Tool 类专用工具。
标签: android go app 工具 session ios apple google nfc功能 .net red
还木有评论哦,快来抢沙发吧~