Hello, I have an app that emulates an NFC card using NFC HCE. Since yesterday I saw an increasing number of crashes on iOS 26 only, which wasn't there before. From what I can see, it seems the app crashes when the NFC presentment intent is shown and 60 seconds passed and user does nothing. The app just crashes after 60 seconds. On previous iOS versions, I know that CardSession.Error.maxSessionDurationReached was thrown after 60 seconds. Is something changed in iOS 26?
Search results for
nfc
1,125 results found
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
I developed an app that uses the Core NFC framework to read tags. The feature works correctly on iOS 18 and earlier versions, but after upgrading to iOS 26, it stopped working. Details: Entitlement Near Field Communication Tag Reader Session Formats D2760000850101 D2760000850101 Info.Plist com.apple.developer.nfc.readersession.iso7816.select-identifiers D2760000850101 com.apple.developer.nfc.readersession.felica.systemcodes 12FC Privacy - NFC Scan Usage Description Signing and Capabilities: Near Field Communicating Tag Reading [Eanbled] My Sample Code Is: class NFCManager: NSObject, NFCTagReaderSessionDelegate { private var nfcSession: NFCTagReaderSession? let isConnectionNeeded = false func startNFCSession() { guard NFCTagReaderSession.readingAvailable else { // NFC is not available on this device. return } nfcSession = NFCTagReaderSession(pollingOption: [.iso14443, .iso15693, .iso18092], delegate: self) nfcSession?.begin() } func stopNFCSession() { nfcSession?.invalidate() } // MA
But is it somehow possible that the statement I evaluate returns true i.e it cannot find NFC even though an NFC chip exists on the device? Is my check comprehensive or should I be doing any additional checks for this
Topic:
App & System Services
SubTopic:
Hardware
Tags:
If it is important for your app that NFC is supported, we would advise to keep on checking and gracefully handle the case where NFC may not be available to make sure your app works properly with all devices and iOS combinations past, present, and future. Argun Tekant / WWDR Engineering / Core Technologies
Topic:
App & System Services
SubTopic:
Hardware
Tags:
I have some logic which requires NFC support on the device. This is what I'm using to make sure that it's available: isNFCMissing = !NFCNDEFReaderSession.readingAvailable && !NFCTagReaderSession.readingAvailable && !NFCVASReaderSession.readingAvailable Is it possible for isNFCMissing to be true even if the device has an NFC chip. The minimum iOS version for the application is 16 which is only supported on devices with an NFC chip to begin with.
Hi, This is my first time developing for iPhone, and I believe I have encountered an unusual edge case related to user management. Background: I work at a very small company currently in the proof-of-concept stage of building an iOS app. We created an Apple account under the company name: Green Vibe, using our corporate email. Initially, I developed the app under the free account on my local iPhone, and everything worked smoothly. When NFC functionality became necessary, we upgraded to a paid Apple Developer account. At that point, I enrolled as a developer under my personal name (Or Itach) while logged in with the Green Vibe Apple account. I want to emphasize that only one Apple account was created — the Green Vibe account. The Issue: When attempting to add NFC, I was able to create the required certificate under the name Or Itach. However, when compiling the project, Xcode prompts me to enter the login password for the user Or Itach. This is problematic because there is no Apple ID associa
Topic:
Code Signing
SubTopic:
General
Existing smartphones store multiple NFC card information. When the NFC antenna of the phone is close to the card reader, it is usually necessary to open the APP to select NFC card information or default to one card information to be transmitted to the card reader. It is not possible to quickly select or switch cards among multiple cards. For example, after using the NFC function to swipe the subway card, the phone needs to open the car access control and community access control again. It is necessary to open the mobile NFC card information management APP to select the community access control card and then swipe the mobile NFC access control, which causes inconvenience. (现有的智能手机存储多个 NFC 卡信息。当手机的NFC天线靠近读卡器时,通常需要打开APP选择NFC卡信息或默认一个卡信息传输到读卡器。无法在多张卡之间快速选择或切换卡。例如,使用NFC功能刷完地铁卡后,手机需要重新打开车内门禁和小区门禁。需要打开手机NFC卡信息管理APP选择社区门禁卡,然后刷手机NFC门禁,造成不便。) Divide the smartphone screen into multiple areas, and users can freely d
Hello, We are currently developing an application that uses the Host-based Card Emulation (HCE) entitlement to enable corporate access functionality. With this entitlement, we have successfully established HCE communication and can interact with our access control systems to unlock doors. Our question is related to improving the user experience: We would like this access functionality to work without requiring the app to be in the foreground, as this adds friction for users during entry. Specifically, we would like to know: Is it possible for our app to coexist with Apple Wallet as the default contactless app, so that: Our app handles NFC interactions for corporate access (e.g., opening doors). Apple Wallet remains the default for payments. If that coexistence is not possible, and our app is set as the default contactless app, Will the system still need to launch our app into the foreground to complete a transaction (e.g., to emulate the NFC card)? Or is there a way to trigger HCE responses
This error can be caused due to a couple reasons, based on the NFC tag being used. Based on your entries: For com.apple.developer.nfc.readersession.iso7816.select-identifiers, missing the Application ID used in a Select command will cause this error. For com.apple.developer.nfc.readersession.felica.systemcodes, the System code must be one of the provided values. If an invalid system code is used, this error will be returned. You also seem to have defined NDEF, so if this is an NDEF tag, this error will be returned if you start an NDEF session but the entitlement is missing. I can only go with what you have shown here, and if these settings are correct, then there is a mismatch of AIDs or system codes. If you confirm that everything is correct and matches, it is also possible that you have an issue with your build so the entitlements and the Info.plist entries and not being built into the app.
Topic:
App & System Services
SubTopic:
Networking
Tags:
Hi, I have created an application for NFC tag scanning and read the tag data. For that, i enabled the capability: NearField Communication Tag reading. Then I added 2 tag formats in the entitlement then i added info.plist: NFCReaderUsageDescription We need to use NFC com.apple.developer.nfc.readersession.felica.systemcodes 8005 8008 0003 fe00 90b7 927a 12FC 86a7 com.apple.developer.nfc.readersession.iso7816.select-identifiers D2760000850100 D2760000850101 but even though when i run the app and tap the nfc card im getting some error: NFCTag didBecomeActive 2025-08-29 19:08:12.272278+0530 SAFRAN_NFC[894:113090] NFCTag didDetectTags 2025-08-29 19:08:12.282869+0530 SAFRAN_NFC[894:113520] [CoreNFC] -[NFCTagReaderSession _connectTag:error:]:730 Error Domain=NFCError Code=2 Missing required entitlement UserInfo={NSLocalizedDescription=Missing required entitlement} 2025-08-29 19:08:12.284044+0530 SAFRAN_NFC[894:113090] NFCTag restarting polling 2025-08-29 19:08:12.372116+0530 SAFRAN_NFC[894:
Hi @RamiroDiaz-Latch, You wrote: In most cases, our code snippet works as expected, and the result is .success. However, we are also encountering other results, such as .denied, .alreadyPresenting, and .cancelled or .notSupported, which cause the Wallet to appear for users. [...] As @EtienneVTS mentioned, the API is intended to be used while an approved app is in the foreground. However, this requirement is indeed documented below: Use this method only in apps that must stay in the foreground when operating near NFC or other RF readers. This method prevents the device from automatically displaying the Apple Pay passes when it detects a compatible reader. This suppression occurs only while the app is in the foreground. The system automatically reenables the Apple Pay interface when the app goes to the background. If the app resumes, the system automatically suppresses the Apple Pay interface again. requestAutomaticPassPresentationSuppression(responseHandler:) https://developer.apple.com/documentation
Topic:
App & System Services
SubTopic:
Wallet
Tags:
Description: While testing Core NFC functionality on iOS 26 beta, when the NFC switch is turned off, the system automatically displays an alert. The alert contains two buttons: “Cancel” and “Settings”. Expected Behavior: When the user taps the “Settings” button, the system should navigate to the system settings page where the NFC switch can be turned on. Actual Behavior: The alert appears as expected Tapping the “Settings” button does not navigate to the system settings page No callback is triggered in the app’s NFC session Steps to Reproduce: Turn off the NFC switch on an iOS 26 beta device Trigger Core NFC functionality (e.g., NFCNDEFReaderSession or NFCTagReaderSession) The system alert appears indicating NFC is turned off Tap the “Settings” button Impact: Users cannot directly navigate to enable NFC from the system alert, making NFC features in the app unusable and negatively affecting user experience. Device Information: iOS
I notice that there are two types of nfc session: NFCTagReaderSession this session in order to get tag's basic info like uid/type which call back function is tagReaderSession(_ session: NFCTagReaderSession, didDetect tags: [NFCTag]) NFCNDEFReaderSession this session in order to get ndef message in tag which call back function is readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage]) My problem: How can i get tag's basic info and tag's ndef message(if it exists) simultaneously in one session or in one callback function.
Let's start with a famous quote from The Green Mile: I am tired, boss. I removed the device frames and the hands and now my reviewer says: The app preview for NFC Read Write Socials Video includes content that does not sufficiently show the app in use. Specifically, the app preview: Includes framing around the video screen capture of the app. Shows footage other than the app in use. To be specific about my changes, there is no framing around the video. I replaced the device frame in the narration with a blue outline. I'm seriously very tired of this. I don't want to fight with App Review anymore about this. I collected several App Previews from other apps that do very similar things. Why is it ok with them and why not with mine? https://apps.apple.com/app/character-ai-chat-talk-text/id1671705818 https://apps.apple.com/app/translate-now-ai-translator/id1348028646 https://apps.apple.com/app/suno-ai-songs-music-maker/id6480136315 https://apps.apple.com/app/videoshow-video-editor-maker/id930380089 https:
Topic:
App Store Distribution & Marketing
SubTopic:
App Review
Tags:
Hello fellow devs and Apple engineers, I want to discuss with everyone about App Preview videos on the App Store. My app NFC.cool is an NFC reading and writing app which interacts with NFC tags that need to be held to the top of device frame of an iPhone. As you can see, this is how my app works and I would like to show that to users on the App Store and present my app in the best way possible. However I keep fighting with app review about device frames and/or real hands in my app preview videos. Sometimes I get a reviewer that is ok with the video and sometimes not. In screenshots device frames are accepted and very common. Why are they not allowed in app previews? It doesn't make a lot of sense to me. And to be honest, I regularly see app previews with device frames on other AppStore pages. Here is the app preview that got rejected lately: https://www.youtube.com/shorts/qTDBGecK0w0 I can easily agree with the hands (even though they are not real, they are a render). But the device frame he