1
Install the package
2
Add the config plugin
In That is the whole configuration for reading and writing NDEF tags. Smartcards,
FeliCa, card emulation and background tags each need one option more — see
Setup.
app.json or app.config.js. The usage description is the text iOS shows
in the scanning sheet, and it is the only explanation your user gets for why
the phone is asking about a card — write your own.app.json
Bare React Native has no
prebuild, so there is no plugin to add. Write the
plist keys and manifest XML by hand instead: every setup page gives you exactly
what to write, and Bare React Native covers getting
Expo Modules into a bare project in the first place.3
Build
eas build and eas build --local work too. What does not work is Expo Go.4
Check it is really there
supported false on a device you know has NFC almost always means the native
module did not link — rebuild, and see
verifying autolinking.You need a development build
Requirements
CoreNFC has existed since iOS 11, so with a 16.4 floor there is no weak linking to
arrange and no
-weak_framework CoreNFC hack to copy from anywhere.
Bare React Native is a supported route, not a footnote. This library is built on the Expo
Modules API, which does not require the Expo SDK — it requires the
expo package, which ships
the module and autolinking infrastructure and little else. The only thing you give up is the
config plugin.The iOS capability
Editing the entitlements file — or letting the plugin write it — is not enough on its own. The App ID needs the capability too:1
Open your App ID
In the Apple Developer portal, under Certificates, Identifiers & Profiles.
2
Enable Near Field Communication Tag Reading
It is in the capability list for the identifier.
3
Regenerate the provisioning profile
Xcode’s “Automatically manage signing” does this for you. A manually managed profile does not,
and the failure appears at runtime as a session that will not open, with an error that never
mentions provisioning.
Next
Read your first tag
A working scan screen, end to end.
Setup for your use case
Smartcards, FeliCa, HCE, background tags.