Conversation
App Store Connect rejected the 1.7.0 upload with "Invalid entitlement for core nfc framework ... NDEF is disallowed". Older Xcode versions inserted NDEF into com.apple.developer.nfc.readersession.formats automatically; Apple has since deprecated it in favour of TAG, and validation now fails for that value against the current SDK. Removing NDEF does not affect functionality -- NDEF messages can still be read and written with TAG alone, which is what the badge scanning and check-in writing in app/NFCScanning/nfc.js rely on. Worth verifying on a real device via TestFlight, since NFC cannot be exercised in the simulator. Build number goes to 2 so the retry upload cannot collide with the rejected 1.7.0 (1).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The 1.7.0 upload was rejected by App Store Connect:
Older Xcode versions automatically inserted
NDEFinto that entitlement array. Apple has since deprecated it in favour ofTAG, and validation now fails on that value. Per Apple DTS on the developer forums:Changes
NDEFfrom both the debug and release entitlements files, leavingTAG.CURRENT_PROJECT_VERSIONto 2 so the retry upload can't collide with the rejected 1.7.0 (1).NDEFdoesn't get re-added.Functional impact
This app uses NDEF for real work, not incidentally —
app/NFCScanning/nfc.jscallsrequestTechnology(NfcTech.Ndef)to both read badges (event scanning, swag checkout) and write them (check-in). Apple's guidance and developer reports are thatTAGalone still permits reading and writing NDEF messages, so this should be behaviour-preserving.That cannot be verified in the simulator, which has no NFC hardware. Badge scanning and writing need testing on a real device via TestFlight before the event, and this is now the top item on that list.
Test plan
plutil -lintaps-environmentstill resolves toproductionfor Release anddevelopmentfor Debug