fix: Zeus-to-Zeus NFC scan (update react-native-hce + empty NDEF guard)#3942
Open
myxmaster wants to merge 2 commits intoZeusLN:masterfrom
Open
fix: Zeus-to-Zeus NFC scan (update react-native-hce + empty NDEF guard)#3942myxmaster wants to merge 2 commits intoZeusLN:masterfrom
myxmaster wants to merge 2 commits intoZeusLN:masterfrom
Conversation
Contributor
There was a problem hiding this comment.
Code Review
This pull request updates the NFC functionality, including upgrading the react-native-hce library, adding react-native-nfc-manager support, and refactoring NFC scanning logic into a reusable scanNfcTag utility. The review identified opportunities to simplify the nfcUtf8ArrayToStr function using the TextDecoder API, improve error handling in NfcManager.start(), and enhance the DiscoverTag listener for better UX and more robust NDEF decoding.
f090117 to
2181a0e
Compare
29 tasks
2181a0e to
bc2bba0
Compare
bc2bba0 to
fe12fff
Compare
Collaborator
Author
|
(rebased) |
fe12fff to
42a2b66
Compare
42a2b66 to
1a998d2
Compare
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.
Description
#3941 should be merged first.
react-native-hce0.1.2 -> 0.3.0DiscoverTaghandler inNFCUtils.tstag.ndefMessage?.[0]?.payloadis absent, close the Android modal, resolve with undefined, and unregister to abort the scan session explicitly.Zeus-to-Zeus NFC scanning was broken in two ways:
TypeError: Cannot read property 'Text' of undefinedinNFCButton.tsx. Root cause: thereact-native-hce0.1.2 API was incompatible with how some NFC reader stacks negotiate the APDU session (CC read attempted multiple times -> HCE responded with CMD_ERROR -> empty NDEF on the scanner side).tag.ndefMessagewas empty ->ndefMessage[0].payloadthrew an unhandled TypeError inNFCUtils.ts.This pull request is categorized as a:
Checklist
yarn run tscand made sure my code compiles correctlyyarn run lintand made sure my code didn’t contain any problematic patternsyarn run prettierand made sure my code is formatted correctlyyarn run testand made sure all of the tests passTesting
If you modified or added a utility file, did you add new unit tests?
I have tested this PR on the following platforms (please specify OS version and phone model/VM):
I have tested this PR with the following types of nodes (please specify node version and API version where appropriate):
On-device
Remote
Locales
Third Party Dependencies and Packages
yarnafter this PR is merged inpackage.jsonandyarn.lockhave been properly updatedOther: