This post contains sensitive language. Please revise it in order to continue.Hello, We are working on digital key style application using custom communication with HCE (Host Card Emulation). We have a working solution but there is one issue - if our application is not selected as default NFC application our users may see Wallet popup when there's no active presentment intent in our application. I didn't find in documentation any information how to stop Wallet from activating. I found there's requestAutomaticPassPresentationSuppression method in PassKit, it requires special permission, however I am not sure if it can be used in this situation, as there's no information how it will impact HCE communication in our application. I'll be greatful for any advice. Regards, Valdemar
Search results for
nfc
1,175 results found
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Some background: We are developing an app that needs to scan NFC tags We are following this documentation for our app We (assume) we've gotten all the correct entitlements for our app Our app correctly shows the NFC scanning prompt We are using up-to-date iPhones to test We tested scanning using a different NFC app on the app store and were able to successfully scan the tag We're using NFC NDEF tags to test The problem: Nothing is being detected in the scan Nothing in the example application when we downloaded it down and loaded it onto a test device (reminder that the app from the app store was able to read our tag) When connected to the debugger, our delegate function is not firing (tested with breakpoints and print statements). The following is the signature of our delegate function: func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage]) Is there something that we're missing to get the NFC scanning to work? Perhaps some ki
Core NFC supports NFC-B and reading multiple messages from NDEF tags. Are you setting invalidateAfterFirstRead to FALSE in your NFCNDEFReaderSession's initWithDelegate method?
Topic:
Developer Tools & Services
SubTopic:
Xcode
Tags:
Hi everyone, I'm working on a library application that uses ISO15693 NFC tags embedded in books to track checkout status. These tags are password-protected and require secure access in order to write the AFI (Application Family Identifier) field, which we use to mark books as checked out. According to the tag spec (ST SL2S2602), the flow for writing to a protected AFI requires: Sending Get Random Number (custom command 0xB2) Sending Present Password (custom command 0xB3) Writing AFI using Write AFI (0x27) We’re using Core NFC's customCommand(requestFlags:customCommandCode:customRequestParameters:) on NFCISO15693Tag. While basic tag operations like getSystemInfo() and readSingleBlock() work fine, any customCommand immediately fails with this error: Error Domain=NFCError Code=100 Tag connection lost This only happens on tags that return ICRef = 0x01 in the system info response. The exact same tags and command sequence work fine on Android (transceive) and in desktop NFC tools. It look
I was about to post a similar question, since I've been struggling with this exact issue for the last 3 days. The default app clip does not pop up when invoked from a QR code or NFC with a URL of the associated domain. I've read and re-read the docs (and re-watched all the app clip WWDC sessions) and they never directly address this. I'm suspecting that yes, Advanced App Clip Experiences are needed to use associated domains. The docs say: A default App Clip experience is required and can be invoked using Safari and Messages, as well as through an NFC tag, QR code, and links in other apps when using an Apple-provided App Clip link. Incredibly confusing. Why do Safari and Messages support the associated domain and not NFC or QR? And why not just say that in simple terms? I'd love for someone from Apple to confirm what the expected behavior is.
Topic:
App Store Distribution & Marketing
SubTopic:
General
Tags:
I am working with a Texas Instruments RF430 NFC tag, which is compliant with: ISO/IEC 14443-4 (ISO-DEP) NFC Forum Type 4 Tag NFC-B protocol NDEF-formatted storage I’m using an iPhone 12 running iOS 18, and my app uses the Core NFC framework. Using NFCNDEFReaderSessionDelegate, I am able to successfully read the first NDEF message from the tag. However, the tag stores multiple NDEF messages, and I would like to access the others. Based on the tag’s specification, these messages are accessible via an NDEF file located at file ID 0xE104. To try and access this additional NDEF file, I attempted to use NFCTagReaderSession with the NFCTagReaderSessionDelegate, intending to issue APDU commands. However, the tagReaderSession(_:didDetect:) delegate method is never called, even though the tag is present and detected using NFCNDEFReaderSession. My questions: Does Core NFC on iOS 18 support issuing custom APDU commands to ISO 14443-4 (NFC-B) tags like the TI RF430? Is
Hi, I’m trying to migrate an App Clip from one main app (App A) to another (App B). These two apps are under the same Apple Developer Account (Team ID), and each has its own App Group. I’m wondering: 1. If I change the App Group configured in the App Clip’s entitlements, will this effectively allow the App Clip to be treated as part of App B? 2. Will this change allow me to reuse the existing App Clip Experiences (e.g., NFC/QR code invocation URLs) that were originally associated with App A? 3. Is such a change sufficient for Apple to treat the App Clip as migrated, or are there additional steps (e.g., changing the Bundle ID, resubmitting the App Clip Experience, etc.) required to complete the migration? I want to confirm whether switching the App Group and submitting a new App Clip with the new app is a valid and seamless way to perform the migration. I understand App Groups are typically used for data sharing, not experience binding — but I want to clarify if switching App Groups affects App Clip–m
Topic:
App Store Distribution & Marketing
SubTopic:
App Store Connect
Tags:
App Clips
App Store Connect
I’m developing an app that uses Host Card Emulation (HCE) and card emulation to interact with NFC readers for product verification. We’ve obtained the necessary HCE entitlements from Apple, and everything works perfectly in our local builds. However, once we deploy the app to TestFlight, the HCE functionality stops working. Has anyone else experienced this issue or found a solution?
Topic:
App & System Services
SubTopic:
Core OS
Tags:
If your app is actively reading an NFC tag, the system UI will appear, and you cannot scan without this UI. You can Add support for background tag reading to your app. Argun Tekant / DTS Engineer / Core Technologies
Topic:
App & System Services
SubTopic:
Hardware
Tags:
Hi, there is a issue that iOS background NFC scanning will only provide a notification result, It need user click to enter my APP, can I have any method to enter my APP directly without user action ?
Hi I am implement my app with Core NFC , I found the module have their own UI , can I implement without the UI? we want the NFC scanning in background , not blocking the UI.
We have an app that uses the pass-presentation-suppression entitlement and calls requestAutomaticPassPresentationSuppression to prevent the Wallet app from being presented when the device is displaying a barcode to a barcode/nfc reader. This works as expected for users of the standard Apple Wallet app. However, it does not prevent third-party wallet apps from being launched, which hides the barcode and prevents it from being scanned properly. What options do I have to prevent third-party wallet apps from launching or interfering while our app is actively presenting a barcode?
Topic:
App & System Services
SubTopic:
Apple Pay
I am getting report of a crash occurring, while doing a NFC HCE CardSession. The swift code is mostly the same as the example from the CardSession docs: @objc func deviceSupportsNFC (_ call: CAPPluginCall) { call.keepAlive = true let supportsNFCCallbackId = call.callbackId! Task() { guard NFCReaderSession.readingAvailable, CardSession.isSupported, // <-- line 86 await CardSession.isEligible else { print(TAG + HCE not allowed/available) var support = JSObject() support[supported] = false; let callback = bridge?.savedCall(withID: supportsNFCCallbackId) call.resolve(); callback?.resolve(support); return; } print(TAG + HCE allowed) var support = JSObject() support[supported] = true; let callback = bridge?.savedCall(withID: supportsNFCCallbackId) call.resolve(); callback?.resolve(support); } } Calling it from my plugin, to verify if (HCE) NFC is supported: if(await deviceInfoService.isIos()) { if(iosSupportEnabled === false) { console.log(NfcHceService:iOS but disabled); return; } this.requi
What do you mean by copy card to NFC? Are you trying to make a copy of a card to another card? If so, the sample Creating NFC Tags from Your iPhone if both the original and the writable card are accepting MiFare commands. If what you mean by copy to NFC is whether you can emulate a MiFare card using your app, that is complicated. Currently there are several special programs that will allow apps to emulate cards. You can read about the capabilities and requirements for these use cases in the following documents: NFC & SE Platform for secure contactless transactions HCE-based contactless transactions for apps in the European Economic Area (EEA) Tap to Pay on iPhone which will need you to work with a Payment Service Provider in your region All these programs have strict geographic and eligibility requirements, which you can find out at the above links. If you are not eligible at this time, no other use cases are supported. Argun Tekant / DTS Engineer / Core Technologies
Topic:
Community
SubTopic:
Apple Developers
Tags:
How to Copy Mifare Card to NFC