ios NFC嘗試
非常感謝大家利用自己寶貴的時間來閱讀我的文章 , 這篇文章主要寫我今天嘗試性的用了一下ios11出的coreNFC,閱讀中如果發現什麼錯誤和可優化的地方 , 希望可以得到你的指點 , 有任何不妥的地方 歡迎指正。喜歡的可以關注下我的簡書、我的部落格
昨天IOS11開始推送升級了,不知道小夥伴們都升級了麼,果斷先把SE測試機升級了,然後索性把xcode9也升了,看了看X的模擬器,一個字,醜。。。然後就是錄屏、AR什麼,最後想起了蘋果一直藏著掖著的NFC功能,那肯定是要搞搞事情的啊,因為剛開始沒看開發者文件,最後在我的6s上試了一下發現不支援,wtf,最後去官方文件中看到了這麼一句
Reading NFC NDEF tags is supported on iPhone 7 and iPhone 7 Plus.
很鬱悶很火大,可憐窮*的我和公司,都沒有支援機型啊,有支援裝置的小夥伴可以試一下看看行不行,能把結果告訴我一下那就再好不過了,好了現在看看怎麼做
首先,去開發者中心註冊支援NFC功能的APPID,流程如下圖所示
回到工程裡,在plist裡新增請求許可權欄位NFCReaderUsageDescription,然後新增型別為array的com.apple.developer.nfc.readersession.formats的欄位,然後新增一個item為NDEF
然後按照下圖進行配置
程式碼:
#import <CoreNFC/CoreNFC.h>
@interface ViewController () <NFCNDEFReaderSessionDelegate>
初始化
_session = [[NFCNDEFReaderSession alloc] initWithDelegate:self queue:dispatch_queue_create(NULL, DISPATCH_QUEUE_CONCURRENT) invalidateAfterFirstRead:NO];
_session.alertMessage = @"我要NFC許可權";
開始
[_session beginSession];
結束
[_session invalidateSession];
代理方法
- (void)readerSession:(NFCNDEFReaderSession *)session didDetectNDEFs:(NSArray*)messages
{
for (NFCNDEFMessage *message in messages) {
for (NFCNDEFPayload *payload in message.records) {
NSLog(@"Payload data:%@",payload.payload);
}
}
}
- (void)readerSession:(NFCNDEFReaderSession *)session didInvalidateWithError:(NSError *)error
{
NSLog(@"%@",[error description]);
}
基本上就是這些啦,希望看到的小夥伴能夠給個反饋。
參考連結
相關文章
- iOS之NFC使用iOS
- iOS 11 NFC技術iOS
- iOS 11 ——遲來的 NFCiOS
- 嘗試
- JAVAFX嘗試Java
- 嘗試1
- 初嘗試swiftSwift
- react native 的初次嘗試之環境搭建 Mac iosReact NativeMaciOS
- NFC以及NFC支付簡介
- 嘗試 LeetcodeLeetCode
- 嘗試手寫promisePromise
- 初次嘗試HTTPSHTTP
- Redis crackit 漏洞嘗試Redis
- NFC
- iOS架構設計解耦的嘗試之模組間通訊iOS架構解耦
- 嘗試 Leetcode(二)LeetCode
- 微信小程式 TypeScript 嘗試微信小程式TypeScript
- oracle函式初次嘗試Oracle函式
- mview on prebuilt table用法嘗試ViewUI
- iOS架構設計解耦的嘗試之VC邏輯AOP切割iOS架構解耦
- 基於 Redis 的 LBS 嘗試Redis
- MyBatis Generator嘗試與踩坑MyBatis
- React最佳實踐嘗試(三)React
- React最佳實踐嘗試(二)React
- ChatGPT技術國產化嘗試ChatGPT
- 服務管理框架的嘗試框架
- struts國際化程式嘗試
- linux模擬windows嘗試LinuxWindows
- iOS12降級至iOS11.4出現正在嘗試恢復資料怎麼辦?iOS
- 嘗試用python開發一款圖片壓縮工具1:嘗試 pillow庫Python
- life is short 中譯本(嘗試中)
- 嘗試說一說事件的使用事件
- 嘗試使用 pack 與 unpack 函式函式
- 嘗試使用 docker 部署 Laravel 專案DockerLaravel
- nodejs“並行”處理嘗試NodeJS並行
- 嘗試 H2o 做機器學習機器學習
- Twitter擴大電商業務:嘗試售票
- 嘗試讓查詢更簡單