新聞中心
ios NFC API
前言:
成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)贛榆,10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):13518219792
Apple developers 上閱讀,以及自己對(duì)NFC的理解。
IOS11 開(kāi)放了 讀取EDEF標(biāo)準(zhǔn)格式的NFC,只限制iPhone 7 以上的機(jī)型。
1.iPhone NFC與Android NFC
android 一直有這個(gè)NFC功能,而且還支持各種自定義格式的NFC,IOS只支持標(biāo)準(zhǔn)的NFC換句話來(lái)說(shuō),IOS掃不出公交卡,以及以前自定義格式的NFC,這個(gè)局限性很大。Android 還可以寫(xiě)入,IOS根本沒(méi)有開(kāi)放這個(gè)功能,系統(tǒng)也不提供像Android那樣,系統(tǒng)直接給你開(kāi)發(fā)NFC功能,(這里指的是,Android有NFC打開(kāi)按鈕就可以識(shí)別NFC),Apple pay 也是得打開(kāi)NFC出現(xiàn)圖標(biāo),才能使用根本不會(huì)像Android那樣,所以說(shuō)NFC開(kāi)發(fā)是很局限的。
2.開(kāi)發(fā)NFC core 這個(gè)框架 難易
NFC core 是一個(gè)輕量級(jí)的框架,相對(duì)比IOS新推出的任何框架都簡(jiǎn)單!標(biāo)準(zhǔn)的Apple API,一個(gè)基類 使用子類模式。
Reader Sessions 基類
NFCNDEFReaderSession NDEF格式的子類
具體操作如下:
使用sessions, 先實(shí)例化出來(lái),sessions 實(shí)例化,直接帶代理和在那個(gè) 線程讀取NFC,一般都是寫(xiě)主線程,然后使用 begin 方法開(kāi)啟,這樣就可以開(kāi)啟NFC識(shí)別了!數(shù)據(jù)在代理回調(diào)方法里獲取數(shù)據(jù),然后取值。
3.IOS NFC在我們生活中有什么作用呢
Apple pay 這個(gè)在中國(guó)根本是行不通,微信支付,支付寶支付,目前普遍流行使用。
NFC在Android 手機(jī)已經(jīng)存在很長(zhǎng)時(shí)間了,但是這項(xiàng)技術(shù)功能一直是不溫不火。
這項(xiàng)技術(shù)沒(méi)有什么突破性,沒(méi)有什么實(shí)質(zhì)性的作用,但是他有很實(shí)在的傳輸功能,類似藍(lán)牙都是雞肋。
Core NFC包含以下內(nèi)容
Reader Sessions 這個(gè)是基類!
NFCNDEFReaderSession 子類,只能讀取NDEF的NFC,什么公交卡 什么自定義格式的想都別想了,要標(biāo)準(zhǔn)的NDEF!目前我測(cè)試 除了標(biāo)準(zhǔn)的,其他的不可以。我們開(kāi)發(fā)就是用這個(gè)類。
1.下面我來(lái)說(shuō)下NFCReaderSession.h文件。
@protocol NFCReaderSession NSObject
這個(gè)就是用來(lái)判讀是否讀取,成功!
這個(gè)用來(lái)提示文字用的,在nuf上方的提示字體!
開(kāi)始讀取數(shù)據(jù)
關(guān)閉NFC讀取功能。
@end
判讀是否已經(jīng)激活NFC,用session isready判讀
掃描到數(shù)據(jù)。Tags是數(shù)據(jù)源
掃描錯(cuò)誤的代理,回調(diào)
@end
@interface NFCReaderSession : NSObjectNFCReaderSession
//屬性設(shè)置代理
@property (nonatomic, weak, readonly) id delegate;
設(shè)置NFC回調(diào)在哪里線程
@property (nonatomic, readonly) dispatch_queue_t sessionQueue;
//實(shí)例方法
@end
以上就是NFC基類的AIP
@class NFCReaderSession;
@class NFCNDEFReaderSession;
@property (nonatomic, assign) NFCTypeNameFormat typeNameFormat; 是對(duì)應(yīng)這個(gè)的 ,那個(gè)枚舉對(duì)應(yīng),你可以在獲取數(shù)據(jù)的時(shí)候打印,對(duì)應(yīng)著每個(gè)枚舉,具體枚舉是什么意思,我不知道apple developers,也沒(méi)找到。用的話
NFCTypeNameFormat typeName = NFCNDEFPayload.typeNameFormat;
};
這個(gè)是NFC的讀取出來(lái)的屬性!
API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, macos, tvos)
@interface NFCNDEFPayload : NSObjectNSSecureCoding
@property (nonatomic, assign) NFCTypeNameFormat typeNameFormat;
@property (nonatomic, copy) NSData *type;
@property (nonatomic, copy) NSData *identifier;
@property (nonatomic, copy) NSData *payload;
//實(shí)例化
@end
*@class NFCNDEFMessage
*消息類,這個(gè)里面有一個(gè)屬性,就是NFC的屬性。
@interface NFCNDEFMessage : NSObjectNSSecureCoding
//這個(gè)是每次讀取后的NFC,可以打印的
@property (nonatomic, copy) NSArrayNFCNDEFPayload records;
// 實(shí)例化
@end
API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, macos, tvos)
@protocol NFCNDEFReaderSessionDelegate NSObject
@required
是否錯(cuò)誤的,如果錯(cuò)誤自行打印判斷
讀取成功時(shí)候返回的FNC,都在這個(gè)messages 里面,讀取消息類
@end
@interface NFCNDEFReaderSession : NFCReaderSession
*是否支持NFC
@property (class, nonatomic, readonly) BOOL readingAvailable;
//實(shí)例化
實(shí)例化方法跟父類,的幾個(gè)屬性基本上一致!
@end
蘋(píng)果11怎么開(kāi)nfc功能
1.首先我們?cè)谑謾C(jī)上打開(kāi)桌面的【系統(tǒng)設(shè)置】功能鍵;
2.然后在“常用選項(xiàng)”列或“所有選項(xiàng)”下進(jìn)行檢查。每個(gè)手機(jī)的界面都不一樣。通常在【通用】或wifi的【更多】子欄下,經(jīng)常可以找到帶nfc功能的手機(jī);
3.進(jìn)入通用欄后,可以看到nfc功能。點(diǎn)擊回車,可以選擇開(kāi)始按鈕。向右滑動(dòng),開(kāi)啟nfc功能;
蘋(píng)果11的nfc功能如何使用蘋(píng)果11開(kāi)啟nfc功能步驟
技巧
開(kāi)啟nfc功能后,不僅可以用另一部支持nfc的手機(jī)傳輸文件,還可以使用支持nfc芯片的公交卡、地鐵、信用卡、支付寶閱讀等功能。
iOS NFC開(kāi)發(fā)(讀標(biāo)簽與寫(xiě)標(biāo)簽)
1-蘋(píng)果手機(jī)從iPhone6開(kāi)始裝有NFC硬件,但并未對(duì)第三方應(yīng)用開(kāi)放。因此iPhone6及iPhone6s不能識(shí)別NFC標(biāo)簽,但是可以使用系統(tǒng)NFC功能如:刷地鐵。
2-蘋(píng)果從iOS11系統(tǒng)開(kāi)始開(kāi)放NFC讀取功能,同時(shí)要求iPhone7及以上機(jī)型。不滿足要求則無(wú)法讀取NFC標(biāo)簽
3-蘋(píng)果在iOS13系統(tǒng)開(kāi)放了標(biāo)簽寫(xiě)入功能,想要向標(biāo)簽內(nèi)寫(xiě)入數(shù)據(jù),需要升級(jí)系統(tǒng)到iOS13,同樣只能寫(xiě)入DNEF格式數(shù)據(jù)
4-另外蘋(píng)果只開(kāi)放DNEF數(shù)據(jù)格式的NFC標(biāo)簽讀取,如果數(shù)據(jù)格式不滿足則無(wú)法讀取。身份證、地鐵卡、銀行卡、大部分的工卡都不是DNEF格式,因此無(wú)法讀取。(空標(biāo)簽只能在iOS13系統(tǒng)下才可以讀取到)(NFC標(biāo)簽可以去淘寶購(gòu)買(mǎi),價(jià)格很便宜 9.9六個(gè)還包郵)
5-身份證、地鐵卡雖然無(wú)法讀取到數(shù)據(jù),但是可以用蘋(píng)果官方APP“快捷指令”進(jìn)行標(biāo)記,來(lái)實(shí)現(xiàn)一些新穎玩法(需要iPhoneXS以上機(jī)型)
6-關(guān)于后臺(tái)讀取,iPhoneXS以上機(jī)型支持,屏幕點(diǎn)亮狀態(tài)下(無(wú)需解鎖),手機(jī)可以讀取一些特定數(shù)據(jù)格式的NFC標(biāo)簽。識(shí)別到標(biāo)簽后,可以實(shí)現(xiàn)撥打電話,發(fā)送郵件等功能(需解鎖)
我自己寫(xiě)的一個(gè)關(guān)于NFC讀寫(xiě)的APP,可以直接用來(lái)調(diào)試NFC標(biāo)簽
1.需要配置Capabilitles。使用NFC需要配置Capabilitles,這會(huì)自動(dòng)為你生成entitlements文件中的必要配置。
2.打開(kāi)隱私相關(guān)設(shè)置。向info.plist中添加Privacy - NFC Scan Usage Description。
1.NFCManager.h
1.NFCManager.m
蘋(píng)果實(shí)現(xiàn)nfc的方法
蘋(píng)果手機(jī)nfc功能開(kāi)啟方法:
1、首先我們?cè)谑謾C(jī)打開(kāi)桌面的--》【系統(tǒng)設(shè)置】功能鍵。
2、接著在常用選項(xiàng)欄目或全部選項(xiàng)下方查看,各個(gè)手機(jī)界面有所不同。通常情況帶有nfc功能的手機(jī)多見(jiàn)于內(nèi)置在【無(wú)線網(wǎng)絡(luò)】或wifi的【更多】子欄目下。
3、進(jìn)入無(wú)線和網(wǎng)絡(luò)更多。欄目后就可以看見(jiàn)nfc功能的開(kāi)啟按鈕了。向右滑動(dòng)即可打開(kāi)nfc功能。
4、打開(kāi)nfc按鈕后點(diǎn)擊進(jìn)入nfc設(shè)置面頁(yè)---【勾選】相應(yīng)的模式即可。
5、開(kāi)啟nfc功能后,不僅能和另一部支持nfc的手機(jī)相互傳送文件,還可以使用支持nfc芯片的公交卡、地鐵、刷卡、支付寶讀取等功能。
注意事項(xiàng):你所在的地方運(yùn)營(yíng)商必須支持nfc應(yīng)用。
拓展資料:
什么是nfc功能?
這個(gè)技術(shù)由非接觸式射頻識(shí)別(RFID)演變而來(lái),由 飛利浦 半導(dǎo)體(現(xiàn)恩智浦半導(dǎo)體公司)、諾基亞和索尼共同研制開(kāi)發(fā),其基礎(chǔ)是RFID及互連技術(shù)。近場(chǎng)通信是一種短距高頻的無(wú)線電技術(shù),在13.56兆赫茲頻率運(yùn)行于10厘米距離內(nèi)。其傳輸速度有106 Kbit/秒、212 Kbit/秒或者424 Kbit/秒三種。
NFC近場(chǎng)通信技術(shù)是由非接觸式射頻識(shí)別(RFID)及互聯(lián)互通技術(shù)整合演變而來(lái),在單一芯片上結(jié)合感應(yīng)式讀卡器、感應(yīng)式卡片和點(diǎn)對(duì)點(diǎn)的功能,能在短距離內(nèi)與兼容設(shè)備進(jìn)行識(shí)別和數(shù)據(jù)交換。工作頻率為13.56MHz,但是使用這種手機(jī)支付方案的用戶必須更換特制的手機(jī)。
iOS NFC開(kāi)發(fā)(OC、swift雙語(yǔ)實(shí)現(xiàn))
Core NFC在iOS 11中引入,用于處理NFC閱讀Tag。由于目前只開(kāi)放了讀的權(quán)限,所以Core NFC是非常輕量級(jí)的一個(gè)框架。
NFC最低支持硬件iPhone 7或者iPhone 7 Plus,最低支持系統(tǒng)為iOS 11.
下面我來(lái)跟大家分享一下NFC的使用步驟。使用NFC前需要注意以下幾點(diǎn):
1、需要開(kāi)啟一個(gè)session,與其他session類似,同時(shí)只能開(kāi)啟一個(gè)。
2、需要App完全在前臺(tái)模式。
3、每個(gè)session最多掃描60s,超時(shí)需再次開(kāi)啟新session。
4、配置讀取單個(gè)或多個(gè)Tag,配置為單個(gè)時(shí),會(huì)在讀取到第一個(gè)Tag時(shí)自動(dòng)結(jié)束session。
5、隱私描述(后文會(huì)寫(xiě)到如何配置)會(huì)在掃描頁(yè)面顯示。
需要配置Capabilitles。使用NFC需要配置Capabilitles,這會(huì)自動(dòng)為你生成entitlements文件中的必要配置。
打開(kāi)隱私相關(guān)設(shè)置。向info.plist中添加Privacy - NFC Scan Usage Description。
第三步激活A(yù)pp ID的相關(guān)功能。如下圖所示
在項(xiàng)目中引入Core NFC。引入Core NFC和相關(guān)代理delegate.
OC:
swift:
在viewDidLoad中開(kāi)啟Session
OC:
swift:
實(shí)現(xiàn)委托方法
OC:
swift:
除此之外,最好做個(gè)系統(tǒng)版本大于iOS 11的判斷
OC:
swift:
蘋(píng)果手機(jī)怎么使用nfc功能
蘋(píng)果手機(jī)怎么使用nfc功能
蘋(píng)果手機(jī)怎么使用nfc功能,我們?cè)谫?gòu)買(mǎi)手機(jī)的時(shí)候可以看到一些手機(jī)的'配置簡(jiǎn)介中會(huì)介紹帶有NFC功能,但很多人都不太清楚要怎么樣用,以下是關(guān)于,蘋(píng)果手機(jī)怎么使用nfc功能。
蘋(píng)果手機(jī)怎么使用nfc功能1
iPhone 11
iOS14.3
方法/步驟
1打開(kāi)設(shè)置
首先打開(kāi)蘋(píng)果手機(jī)里的設(shè)置;
2選擇通用
然后選擇通用選項(xiàng);
3打開(kāi)nfc
最后選擇nfc功能進(jìn)入,將其打開(kāi)就完成了。
我總結(jié)
開(kāi)啟后就可以使用nfc功能了,以上就是本期視頻的全部?jī)?nèi)容了
蘋(píng)果手機(jī)怎么使用nfc功能2
1、打開(kāi)手機(jī)上的錢(qián)包APP,點(diǎn)擊右上角【+】添加圖標(biāo)。
2、點(diǎn)擊【掃描或添加卡】。
3、選擇想要充值的公交卡類型,輸入充值金額完成支付,然后將手機(jī)貼近公交車刷卡位置即可。
本文以iphone13為例適用于ios15系統(tǒng)
蘋(píng)果手機(jī)怎么使用nfc功能3
蘋(píng)果手機(jī)nfc功能使用教程
首先在主頁(yè)找到錢(qián)包,點(diǎn)擊進(jìn)入,如下圖所示
在錢(qián)包界面,第一次用需要綁定卡片,我們可以用nfc刷公交和刷卡消費(fèi),如下圖所示
進(jìn)入nfc功能介紹,點(diǎn)擊繼續(xù)按鈕,如下圖所示
進(jìn)入功能界面,可以綁定銀行卡,或者但公交卡,我們以刷公交為例介紹,如下圖所示
我們選擇一個(gè)數(shù)量的公交充值,點(diǎn)擊添加,如下圖所示
公交充值需要綁定銀行卡,我們選擇將借記卡添加到錢(qián)包,如下圖所示
下面是掃描一張銀行卡,并輸入相關(guān)信息,點(diǎn)擊下一步,如下圖所示
出現(xiàn)使用協(xié)議,點(diǎn)擊同意,完成驗(yàn)證就添加成功了,充值完就可以使用了,如下圖所示
以后到支持apple pay的地鐵公交上直接將手機(jī)靠近刷卡位置就可以了,如下圖所示
網(wǎng)頁(yè)題目:iosnfc開(kāi)發(fā)教程,ios ufc
網(wǎng)站路徑:http://ef60e0e.cn/article/phcoej.html