主頁 > .NET開發 > 如何獲取特定NFCTAG的AID

如何獲取特定NFCTAG的AID

2022-05-14 08:48:50 .NET開發

我正在嘗試讀取ISO 14443-3a(NXP - NTAG215)型別的NFC 標簽NFCTagReaderSession有了NFCNDEFReaderSession它就可以正常作業。但是,由于我只支持 iOS 13 的設備并且需要訪問各種其他標簽資訊(標簽 ID 等),我使用NFCTagReaderSession

session = NFCTagReaderSession(pollingOption: [.iso14443, .iso15693, .iso18092], delegate: self)
session?.alertMessage = alertMessage ?? ""
session?.begin()

不幸的是,標簽根本沒有被檢測到NFCTagReaderSession

Info.plist我猜我的( com.apple.developer.nfc.readersession.iso7816.select-identifiers) 檔案中沒有列出應用程式識別符號。不幸的是,我不知道如何找到正確的 AID。我列出了我能找到的所有可能的艾滋病:

<key>com.apple.developer.nfc.readersession.felica.systemcodes</key>
<array>
  <string>12FC</string>
</array>
<key>com.apple.developer.nfc.readersession.iso7816.select-identifiers</key>
<array>
  <string>D2760000850101h</string>
  <string>315041592E5359532E4444463031</string>
  <string>D4100000030001</string>
  <string>325041592E5359532E4444463031</string>
  <string>44464D46412E44466172653234313031</string>
  <string>A00000000101</string>
  <string>A000000003000000</string>
  <string>A00000000300037561</string>
  <string>A00000000305076010</string>
  <string>A0000000031010</string>
  <string>A000000003101001</string>
  <string>A000000003101002</string>
  <string>A0000000032010</string>
  <string>A0000000032020</string>
  <string>A0000000033010</string>
  <string>A0000000034010</string>
  <string>A0000000035010</string>
  <string>A000000003534441</string>
  <string>A0000000035350</string>
  <string>A000000003535041</string>
  <string>A0000000036010</string>
  <string>A0000000036020</string>
  <string>A0000000038002</string>
  <string>A0000000038010</string>
  <string>A0000000039010</string>
  <string>A000000003999910</string>
  <string>A0000000040000</string>
  <string>A00000000401</string>
  <string>A0000000041010</string>
  <string>A00000000410101213</string>
  <string>A00000000410101215</string>
  <string>A0000000041010BB5449435301</string>
  <string>A0000000042010</string>
  <string>A0000000042203</string>
  <string>A0000000043010</string>
  <string>A0000000043060</string>
  <string>A000000004306001</string>
  <string>A0000000044010</string>
  <string>A0000000045010</string>
  <string>A0000000045555</string>
  <string>A0000000046000</string>
  <string>A0000000048002</string>
  <string>A0000000049999</string>
  <string>A0000000050001</string>
  <string>A0000000050002</string>
  <string>A0000000090001FF44FF1289</string>
  <string>A0000000101030</string>
  <string>A00000001800</string>
  <string>A0000000181001</string>
  <string>A000000018434D</string>
  <string>A000000018434D00</string>
  <string>A00000002401</string>
  <string>A000000025</string>
  <string>A0000000250000</string>
  <string>A00000002501</string>
  <string>A000000025010104</string>
  <string>A000000025010402</string>
  <string>A000000025010701</string>
  <string>A000000025010801</string>
  <string>A0000000291010</string>
  <string>A00000002945087510100000</string>
  <string>A00000002949034010100001</string>
  <string>A00000002949282010100000</string>
  <string>A000000029564182</string>
  <string>A00000003029057000AD13100101FF</string>
  <string>A0000000308000000000280101</string>
  <string>A0000000421010</string>
  <string>A0000000422010</string>
  <string>A0000000423010</string>
  <string>A0000000424010</string>
  <string>A0000000425010</string>
  <string>A0000000426010</string>
  <string>A00000005945430100</string>
  <string>A000000063504B43532D3135</string>
  <string>A0000000635741502D57494D</string>
  <string>A00000006510</string>
  <string>A0000000651010</string>
  <string>A00000006900</string>
  <string>A000000077010000021000000000003B</string>
  <string>A0000000790100</string>
  <string>A0000000790101</string>
  <string>A0000000790102</string>
  <string>A00000007901F0</string>
  <string>A00000007901F1</string>
  <string>A00000007901F2</string>
  <string>A0000000790200</string>
  <string>A0000000790201</string>
  <string>A00000007902FB</string>
  <string>A00000007902FD</string>
  <string>A00000007902FE</string>
  <string>A0000000790300</string>
  <string>A0000000791201</string>
  <string>A0000000791202</string>
  <string>A0000000871002FF49FF0589</string>
  <string>A00000008810200105C100</string>
  <string>A000000088102201034221</string>
  <string>A000000088102201034321</string>
  <string>A0000000960200</string>
  <string>A000000098</string>
  <string>A0000000980840</string>
  <string>A0000000980848</string>
  <string>A0000001110101</string>
  <string>A0000001110201</string>
  <string>A0000001160300</string>
  <string>A0000001166010</string>
  <string>A0000001166030</string>
  <string>A0000001169000</string>
  <string>A000000116A001</string>
  <string>A000000116DB00</string>
  <string>A000000118010000</string>
  <string>A000000118020000</string>
  <string>A000000118030000</string>
  <string>A000000118040000</string>
  <string>A0000001184543</string>
  <string>A000000118454E</string>
  <string>A0000001211010</string>
  <string>A0000001320001</string>
  <string>A0000001408001</string>
  <string>A0000001410001</string>
  <string>A0000001510000</string>
  <string>A00000015153504341534400</string>
  <string>A0000001523010</string>
  <string>A0000001524010</string>
  <string>A0000001544442</string>
  <string>A0000001570010</string>
  <string>A0000001570020</string>
  <string>A0000001570021</string>
  <string>A0000001570022</string>
  <string>A0000001570023</string>
  <string>A0000001570030</string>
  <string>A0000001570031</string>
  <string>A0000001570040</string>
  <string>A0000001570050</string>
  <string>A0000001570051</string>
  <string>A0000001570100</string>
  <string>A0000001570104</string>
  <string>A0000001570109</string>
  <string>A000000157010A</string>
  <string>A000000157010B</string>
  <string>A000000157010C</string>
  <string>A000000157010D</string>
  <string>A0000001574443</string>
  <string>A0000001574444</string>
  <string>A000000167413000FF</string>
  <string>A000000167413001</string>
  <string>A000000172950001</string>
  <string>A000000177504B43532D3135</string>
  <string>A0000001850002</string>
  <string>A0000001884443</string>
  <string>A0000002040000</string>
  <string>A0000002281010</string>
  <string>A0000002282010</string>
  <string>A00000022820101010</string>
  <string>A0000002471001</string>
  <string>A0000002472001</string>
  <string>A0000002771010</string>
  <string>A00000030600000000000000</string>
  <string>A000000308000010000100</string>
  <string>A00000031510100528</string>
  <string>A0000003156020</string>
  <string>A00000032301</string>
  <string>A0000003230101</string>
  <string>A0000003241010</string>
  <string>A000000333010101</string>
  <string>A000000333010102</string>
  <string>A000000333010103</string>
  <string>A000000333010106</string>
  <string>A000000333010108</string>
  <string>A000000337301000</string>
  <string>A000000337101000</string>
  <string>A000000337102000</string>
  <string>A000000337101001</string>
  <string>A000000337102001</string>
  <string>A000000337601001</string>
  <string>A0000003591010</string>
  <string>A0000003591010028001</string>
  <string>A00000035910100380</string>
  <string>A0000003660001</string>
  <string>A0000003660002</string>
  <string>A0000003710001</string>
  <string>A00000038410</string>
  <string>A00000038420</string>
  <string>A0000003964D66344D0002</string>
  <string>A00000039742544659</string>
  <string>A0000003974349445F0100</string>
  <string>A0000004271010</string>
  <string>A0000004320001</string>
  <string>A0000004360100</string>
  <string>A0000004391010</string>
  <string>A0000004540010</string>
  <string>A0000004540011</string>
  <string>A0000004762010</string>
  <string>A0000004763030</string>
  <string>A0000004766C</string>
  <string>A000000476A010</string>
  <string>A000000476A110</string>
  <string>A000000485</string>
  <string>A0000005241010</string>
  <string>A0000005271002</string>
  <string>A000000527200101</string>
  <string>A000000527210101</string>
  <string>A0000005591010FFFFFFFF8900000100</string>
  <string>A0000005591010FFFFFFFF8900000200</string>
  <string>A0000005591010FFFFFFFF8900000D00</string>
  <string>A0000005591010FFFFFFFF8900000E00</string>
  <string>A0000005591010FFFFFFFF8900000F00</string>
  <string>A0000005591010FFFFFFFF8900001000</string>
  <string>A00000061700</string>
  <string>A0000006200620</string>
  <string>A0000006260101010001</string>
  <string>A0000006351010</string>
  <string>A0000006581010</string>
  <string>A0000006581011</string>
  <string>A0000006582010</string>
  <string>A0000006723010</string>
  <string>A0000006723020</string>
  <string>A0000007705850</string>
  <string>A0000007790000</string>
  <string>B012345678</string>
  <string>D040000001000002</string>
  <string>D040000002000002</string>
  <string>D040000003000002</string>
  <string>D040000004000002</string>
  <string>D04000000B000002</string>
  <string>D04000000C000002</string>
  <string>D04000000D000002</string>
  <string>D040000013000001</string>
  <string>D040000013000001</string>
  <string>D040000013000002</string>
  <string>D040000013000002</string>
  <string>D040000014000001</string>
  <string>D040000015000001</string>
  <string>D040000015000001</string>
  <string>D0400000190001</string>
  <string>D0400000190002</string>
  <string>D0400000190003</string>
  <string>D0400000190004</string>
  <string>D0400000190010</string>
  <string>D268000001</string>
  <string>D276000005</string>
  <string>D276000005AA040360010410</string>
  <string>D276000005AA0503E00401</string>
  <string>D276000005AA0503E00501</string>
  <string>D276000005AA0503E0050101</string>
  <string>D276000005AB0503E0040101</string>
  <string>D27600002200000001</string>
  <string>D27600002200000002</string>
  <string>D27600002200000060</string>
  <string>D276000025</string>
  <string>D27600002545410100</string>
  <string>D27600002545500100</string>
  <string>D27600002547410100</string>
  <string>D276000060</string>
  <string>D2760000850100</string>
  <string>D2760000850101</string>
  <string>D276000118</string>
  <string>D2760001180101</string>
  <string>D27600012401</string>
  <string>D276000124010101FFFF000000010000</string>
  <string>D2760001240102000000000000010000</string>
  <string>D27600012402</string>
  <string>D2760001240200010000000000000000</string>
  <string>D4100000011010</string>
  <string>D5280050218002</string>
  <string>D5780000021010</string>
  <string>D7560000010101</string>
  <string>D7560000300101</string>
  <string>D8040000013010</string>
  <string>E80704007F00070302</string>
  <string>E82881C11702</string>
  <string>E828BD080F</string>
  <string>F0000000030001</string>
</array>

來源

我的App.entitlements

<?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>
        <string>TAG</string>
    </array>
</dict>
</plist>

正確的 AID 顯然還沒有。

如何為我的標簽找到正確的 AID?我可以在某處閱讀嗎?

uj5u.com熱心網友回復:

ISO 14443-3a (NXP - NTAG215) 標簽沒有應用識別符號 (AID),因為它們是 NFC 論壇型別 2 標簽,只有 NFC 論壇型別 4 標簽使用 AID

我相信 NTAG215 在 iOS 中的 Mifare 標簽中被處理(更具體地說,NFCMiFareUnknown因為它們是 NcfA 標簽,或者可能是NFCMiFareUltralightType,因為它們具有與 Mifare Ultralight 標簽非常相似的命令集)

因此,您將使用sendMiFareCommand它與它進行通信,或者NFCNDEFReaderSession它們完全符合 Ndef 標準。

NFCNDEFReaderSession盡管對于 iOS,我認為它不能正確處理 Ndef 可格式化卡(因此,如果 NTAG 215 未格式化交付,那么您無法在不先格式化的情況下將 Ndef 資料寫入其中sendMiFareCommand

由于 NFC 支持不佳,希望能在我遠離 iOS 時有所幫助。

uj5u.com熱心網友回復:

確保將“隱私 - NFC 掃描使用說明”添加到 Info.plist

uj5u.com熱心網友回復:

一切都是正確的。在我清除構建檔案夾后,它作業了......

轉載請註明出處,本文鏈接:https://www.uj5u.com/net/473518.html

標籤:IOS 迅速 NFC 核心nfc

上一篇:獲取投標的URL引數的值我得到零值

下一篇:無法裝載開發者磁盤映像。iOS15.4.1-Xcode13.3.1(13E500a)

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • WebAPI簡介

    Web體系結構: 有三個核心:資源(resource),URL(統一資源識別符號)和表示 他們的關系是這樣的:一個資源由一個URL進行標識,HTTP客戶端使用URL定位資源,表示是從資源回傳資料,媒體型別是資源回傳的資料格式。 接下來我們說下HTTP. HTTP協議的系統是一種無狀態的方式,使用請求/ ......

    uj5u.com 2020-09-09 22:07:47 more
  • asp.net core 3.1 入口:Program.cs中的Main函式

    本文分析Program.cs 中Main()函式中代碼的運行順序分析asp.net core程式的啟動,重點不是剖析原始碼,而是理清程式開始時執行的順序。到呼叫了哪些實體,哪些法方。asp.net core 3.1 的程式入口在專案Program.cs檔案里,如下。ususing System; us ......

    uj5u.com 2020-09-09 22:07:49 more
  • asp.net網站作為websocket服務端的應用該如何寫

    最近被websocket的一個問題困擾了很久,有一個需求是在web網站中搭建websocket服務。客戶端通過網頁與服務器建立連接,然后服務器根據ip給客戶端網頁發送資訊。 其實,這個需求并不難,只是剛開始對websocket的內容不太了解。上網搜索了一下,有通過asp.net core 實作的、有 ......

    uj5u.com 2020-09-09 22:08:02 more
  • ASP.NET 開源匯入匯出庫Magicodes.IE Docker中使用

    Magicodes.IE在Docker中使用 更新歷史 2019.02.13 【Nuget】版本更新到2.0.2 【匯入】修復單列匯入的Bug,單元測驗“OneColumnImporter_Test”。問題見(https://github.com/dotnetcore/Magicodes.IE/is ......

    uj5u.com 2020-09-09 22:08:05 more
  • 在webform中使用ajax

    如果你用過Asp.net webform, 說明你也算是.NET 開發的老兵了。WEBform應該是2011 2013左右,當時還用visual studio 2005、 visual studio 2008。后來基本都用的是MVC。 如果是新開發的專案,估計沒人會用webform技術。但是有些舊版 ......

    uj5u.com 2020-09-09 22:08:50 more
  • iis添加asp.net網站,訪問提示:由于擴展配置問題而無法提供您請求的

    今天在iis服務器配置asp.net網站,遇到一個問題,記錄一下: 問題:由于擴展配置問題而無法提供您請求的頁面。如果該頁面是腳本,請添加處理程式。如果應下載檔案,請添加 MIME 映射。 WindowServer2012服務器,添加角色安裝完.netframework和iis之后,運行aspx頁面 ......

    uj5u.com 2020-09-09 22:10:00 more
  • WebAPI-處理架構

    帶著問題去思考,大家好! 問題1:HTTP請求和回傳相應的HTTP回應資訊之間發生了什么? 1:首先是最底層,托管層,位于WebAPI和底層HTTP堆疊之間 2:其次是 訊息處理程式管道層,這里比如日志和快取。OWIN的參考是將訊息處理程式管道的一些功能下移到堆疊下端的OWIN中間件了。 3:控制器處理 ......

    uj5u.com 2020-09-09 22:11:13 more
  • 微信門戶開發框架-使用指導說明書

    微信門戶應用管理系統,采用基于 MVC + Bootstrap + Ajax + Enterprise Library的技術路線,界面層采用Boostrap + Metronic組合的前端框架,資料訪問層支持Oracle、SQLServer、MySQL、PostgreSQL等資料庫。框架以MVC5,... ......

    uj5u.com 2020-09-09 22:15:18 more
  • WebAPI-HTTP編程模型

    帶著問題去思考,大家好!它是什么?它包含什么?它能干什么? 訊息 HTTP編程模型的核心就是訊息抽象,表示為:HttPRequestMessage,HttpResponseMessage.用于客戶端和服務端之間交換請求和回應訊息。 HttpMethod類包含了一組靜態屬性: private stat ......

    uj5u.com 2020-09-09 22:15:23 more
  • 部署WebApi隨筆

    一、跨域 NuGet參考Microsoft.AspNet.WebApi.Cors WebApiConfig.cs中配置: // Web API 配置和服務 config.EnableCors(new EnableCorsAttribute("*", "*", "*")); 二、清除默認回傳XML格式 ......

    uj5u.com 2020-09-09 22:15:48 more
最新发布
  • C#多執行緒學習(二) 如何操縱一個執行緒

    <a href="https://www.cnblogs.com/x-zhi/" target="_blank"><img width="48" height="48" class="pfs" src="https://pic.cnblogs.com/face/2943582/20220801082530.png" alt="" /></...

    uj5u.com 2023-04-19 09:17:20 more
  • C#多執行緒學習(二) 如何操縱一個執行緒

    C#多執行緒學習(二) 如何操縱一個執行緒 執行緒學習第一篇:C#多執行緒學習(一) 多執行緒的相關概念 下面我們就動手來創建一個執行緒,使用Thread類創建執行緒時,只需提供執行緒入口即可。(執行緒入口使程式知道該讓這個執行緒干什么事) 在C#中,執行緒入口是通過ThreadStart代理(delegate)來提供的 ......

    uj5u.com 2023-04-19 09:16:49 more
  • 記一次 .NET某醫療器械清洗系統 卡死分析

    <a href="https://www.cnblogs.com/huangxincheng/" target="_blank"><img width="48" height="48" class="pfs" src="https://pic.cnblogs.com/face/214741/20200614104537.png" alt="" /&g...

    uj5u.com 2023-04-18 08:39:04 more
  • 記一次 .NET某醫療器械清洗系統 卡死分析

    一:背景 1. 講故事 前段時間協助訓練營里的一位朋友分析了一個程式卡死的問題,回過頭來看這個案例比較經典,這篇稍微整理一下供后來者少踩坑吧。 二:WinDbg 分析 1. 為什么會卡死 因為是表單程式,理所當然就是看主執行緒此時正在做什么? 可以用 ~0s ; k 看一下便知。 0:000> k # ......

    uj5u.com 2023-04-18 08:33:10 more
  • SignalR, No Connection with that ID,IIS

    <a href="https://www.cnblogs.com/smartstar/" target="_blank"><img width="48" height="48" class="pfs" src="https://pic.cnblogs.com/face/u36196.jpg" alt="" /></a>...

    uj5u.com 2023-03-30 17:21:52 more
  • 一次對pool的誤用導致的.net頻繁gc的診斷分析

    <a href="https://www.cnblogs.com/dotnet-diagnostic/" target="_blank"><img width="48" height="48" class="pfs" src="https://pic.cnblogs.com/face/3115652/20230225090434.png" alt=""...

    uj5u.com 2023-03-28 10:15:33 more
  • 一次對pool的誤用導致的.net頻繁gc的診斷分析

    <a href="https://www.cnblogs.com/dotnet-diagnostic/" target="_blank"><img width="48" height="48" class="pfs" src="https://pic.cnblogs.com/face/3115652/20230225090434.png" alt=""...

    uj5u.com 2023-03-28 10:13:31 more
  • C#遍歷指定檔案夾中所有檔案的3種方法

    <a href="https://www.cnblogs.com/xbhp/" target="_blank"><img width="48" height="48" class="pfs" src="https://pic.cnblogs.com/face/957602/20230310105611.png" alt="" /></a&...

    uj5u.com 2023-03-27 14:46:55 more
  • C#/VB.NET:如何將PDF轉為PDF/A

    <a href="https://www.cnblogs.com/Carina-baby/" target="_blank"><img width="48" height="48" class="pfs" src="https://pic.cnblogs.com/face/2859233/20220427162558.png" alt="" />...

    uj5u.com 2023-03-27 14:46:35 more
  • 武裝你的WEBAPI-OData聚合查詢

    <a href="https://www.cnblogs.com/podolski/" target="_blank"><img width="48" height="48" class="pfs" src="https://pic.cnblogs.com/face/616093/20140323000327.png" alt="" /><...

    uj5u.com 2023-03-27 14:46:16 more