react-native-nfc-manager 4.0.0-beta.1 → 4.0.0-beta.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/README.md +146 -49
  2. package/android/src/main/java/community/revteltech/nfc/MifareClassicHandler.java +419 -0
  3. package/android/src/main/java/community/revteltech/nfc/MifareUltralightHandler.java +84 -0
  4. package/android/src/main/java/community/revteltech/nfc/NdefHandler.java +397 -0
  5. package/android/src/main/java/community/revteltech/nfc/NfcAdapterStateChangedReceiver.java +48 -0
  6. package/android/src/main/java/community/revteltech/nfc/NfcErrorCodes.java +16 -0
  7. package/android/src/main/java/community/revteltech/nfc/NfcManager.java +348 -1087
  8. package/android/src/main/java/community/revteltech/nfc/NfcManagerIOSStubBase.java +130 -0
  9. package/android/src/main/java/community/revteltech/nfc/NfcTechIoRouter.java +258 -0
  10. package/android/src/main/java/community/revteltech/nfc/TagTechnologyRequest.java +19 -7
  11. package/android/src/main/java/community/revteltech/nfc/Util.java +275 -2
  12. package/app.plugin.js +8 -9
  13. package/dist/ndef-lib/constants.js +67 -0
  14. package/dist/ndef-lib/constants.js.map +1 -0
  15. package/dist/ndef-lib/index.js +79 -0
  16. package/dist/ndef-lib/index.js.map +1 -0
  17. package/dist/ndef-lib/ndef-text.js +29 -0
  18. package/dist/ndef-lib/ndef-text.js.map +1 -0
  19. package/dist/ndef-lib/ndef-uri.js +40 -0
  20. package/dist/ndef-lib/ndef-uri.js.map +1 -0
  21. package/dist/ndef-lib/ndef-wifi-simple.js +100 -0
  22. package/dist/ndef-lib/ndef-wifi-simple.js.map +1 -0
  23. package/dist/ndef-lib/ndef.js +152 -0
  24. package/dist/ndef-lib/ndef.js.map +1 -0
  25. package/dist/ndef-lib/stringifier.js +155 -0
  26. package/dist/ndef-lib/stringifier.js.map +1 -0
  27. package/dist/ndef-lib/util.js +134 -0
  28. package/dist/ndef-lib/util.js.map +1 -0
  29. package/dist/specs/NativeNfcManager.js +5 -0
  30. package/dist/specs/NativeNfcManager.js.map +1 -0
  31. package/dist/src/NativeNfcManager.js +55 -0
  32. package/dist/src/NativeNfcManager.js.map +1 -0
  33. package/dist/src/NfcError.js +220 -0
  34. package/dist/src/NfcError.js.map +1 -0
  35. package/dist/src/NfcManager.js +175 -0
  36. package/dist/src/NfcManager.js.map +1 -0
  37. package/dist/src/NfcManagerAndroid.js +112 -0
  38. package/dist/src/NfcManagerAndroid.js.map +1 -0
  39. package/dist/src/NfcManagerIOS.js +119 -0
  40. package/dist/src/NfcManagerIOS.js.map +1 -0
  41. package/dist/src/NfcTech/Iso15693HandlerIOS.js +99 -0
  42. package/dist/src/NfcTech/Iso15693HandlerIOS.js.map +1 -0
  43. package/dist/src/NfcTech/IsoDepHandler.js +29 -0
  44. package/dist/src/NfcTech/IsoDepHandler.js.map +1 -0
  45. package/dist/src/NfcTech/MifareClassicHandlerAndroid.js +68 -0
  46. package/dist/src/NfcTech/MifareClassicHandlerAndroid.js.map +1 -0
  47. package/dist/src/NfcTech/MifareUltralightHandlerAndroid.js +23 -0
  48. package/dist/src/NfcTech/MifareUltralightHandlerAndroid.js.map +1 -0
  49. package/dist/src/NfcTech/NdefFormatableHandlerAndroid.js +16 -0
  50. package/dist/src/NfcTech/NdefFormatableHandlerAndroid.js.map +1 -0
  51. package/dist/src/NfcTech/NdefHandler.js +54 -0
  52. package/dist/src/NfcTech/NdefHandler.js.map +1 -0
  53. package/dist/src/NfcTech/NfcAHandler.js +16 -0
  54. package/dist/src/NfcTech/NfcAHandler.js.map +1 -0
  55. package/dist/src/NfcTech/NfcVHandler.js +33 -0
  56. package/dist/src/NfcTech/NfcVHandler.js.map +1 -0
  57. package/dist/src/index.js +53 -0
  58. package/dist/src/index.js.map +1 -0
  59. package/index.d.ts +110 -46
  60. package/ios/NfcManager.h +2 -11
  61. package/ios/NfcManager.mm +264 -438
  62. package/ios/RNNfcBridgeUtil.h +28 -0
  63. package/ios/RNNfcBridgeUtil.mm +52 -0
  64. package/ios/RNNfcManager+Felica.swift +61 -0
  65. package/ios/RNNfcManager+Iso15693.swift +895 -0
  66. package/ios/RNNfcManager+IsoDep.swift +145 -0
  67. package/ios/RNNfcManager+Mifare.swift +61 -0
  68. package/ios/RNNfcManager+Ndef.swift +120 -0
  69. package/ios/RNNfcManager.h +251 -0
  70. package/ios/RNNfcManager.swift +648 -0
  71. package/ios/RNNfcSessionDelegateProxy.swift +104 -0
  72. package/ios/RNNfcSwiftUtil.swift +34 -0
  73. package/ndef-lib/{constants.js → constants.ts} +2 -0
  74. package/ndef-lib/{index.js → index.ts} +23 -12
  75. package/ndef-lib/{ndef-text.js → ndef-text.ts} +7 -2
  76. package/ndef-lib/{ndef-uri.js → ndef-uri.ts} +8 -3
  77. package/ndef-lib/{ndef-wifi-simple.js → ndef-wifi-simple.ts} +34 -11
  78. package/ndef-lib/{ndef.js → ndef.ts} +53 -25
  79. package/ndef-lib/{stringifier.js → stringifier.ts} +27 -10
  80. package/ndef-lib/{util.js → util.ts} +23 -9
  81. package/package.json +39 -21
  82. package/react-native-nfc-manager.podspec +3 -2
  83. package/specs/NativeNfcManager.ts +18 -4
  84. package/src/NativeNfcManager.ts +84 -0
  85. package/src/{NfcError.js → NfcError.ts} +6 -17
  86. package/src/{NfcManager.js → NfcManager.ts} +51 -34
  87. package/src/{NfcManagerAndroid.js → NfcManagerAndroid.ts} +27 -8
  88. package/src/{NfcManagerIOS.js → NfcManagerIOS.ts} +31 -10
  89. package/src/NfcTech/{Iso15693HandlerIOS.js → Iso15693HandlerIOS.ts} +64 -36
  90. package/src/NfcTech/{IsoDepHandler.js → IsoDepHandler.ts} +8 -5
  91. package/src/NfcTech/{MifareClassicHandlerAndroid.js → MifareClassicHandlerAndroid.ts} +33 -24
  92. package/src/NfcTech/{MifareUltralightHandlerAndroid.js → MifareUltralightHandlerAndroid.ts} +14 -5
  93. package/src/NfcTech/{NdefFormatableHandlerAndroid.js → NdefFormatableHandlerAndroid.ts} +9 -2
  94. package/src/NfcTech/{NdefHandler.js → NdefHandler.ts} +19 -6
  95. package/src/NfcTech/{NfcAHandler.js → NfcAHandler.ts} +6 -3
  96. package/src/NfcTech/{NfcVHandler.js → NfcVHandler.ts} +8 -5
  97. package/src/__mocks__/{NativeNfcManager.js → NativeNfcManager.ts} +4 -1
  98. package/src/{index.js → index.ts} +1 -1
  99. package/android/src/main/java/community/revteltech/nfc/JsonConvert.java +0 -141
  100. package/android/src/main/java/community/revteltech/nfc/MifareUtil.java +0 -84
  101. package/ios/NfcManager+Felica.mm +0 -43
  102. package/ios/NfcManager+Iso15693.mm +0 -600
  103. package/ios/NfcManager+IsoDep.mm +0 -83
  104. package/ios/NfcManager+Mifare.mm +0 -43
  105. package/ios/Util.mm +0 -55
  106. package/specs/NativeNfcManager.d.ts +0 -6
  107. package/specs/NativeNfcManager.js +0 -3
  108. package/specs/NativeNfcManager.js.map +0 -1
  109. package/src/NativeNfcManager.js +0 -37
@@ -0,0 +1,145 @@
1
+ import CoreNFC
2
+ import Foundation
3
+
4
+ public extension RNNfcManager {
5
+ @objc(sendCommandAPDUBytes:callback:)
6
+ static func sendCommandAPDUBytes(
7
+ _ bytes: [NSNumber],
8
+ callback: @escaping RNNfcResponseSenderBlock
9
+ ) {
10
+ forwardWithTagSessionSupport(
11
+ isTagSessionSupported(),
12
+ callback: callback,
13
+ operation: { tagSession in
14
+ sendCommandAPDUBytes(with: tagSession, bytes: bytes) { response, sw1, sw2, error in
15
+ if let error {
16
+ callback([RNNfcSwiftUtil.errorMessage(from: error as NSError), NSNull()])
17
+ return
18
+ }
19
+
20
+ callback([NSNull(), response ?? [], sw1 ?? 0, sw2 ?? 0])
21
+ }
22
+ }
23
+ )
24
+ }
25
+
26
+ @objc(sendCommandAPDU:callback:)
27
+ static func sendCommandAPDU(
28
+ _ payload: NSDictionary,
29
+ callback: @escaping RNNfcResponseSenderBlock
30
+ ) {
31
+ forwardWithTagSessionSupport(
32
+ isTagSessionSupported(),
33
+ callback: callback,
34
+ operation: { tagSession in
35
+ sendCommandAPDU(with: tagSession, payload: payload) { response, sw1, sw2, error in
36
+ if let error {
37
+ callback([RNNfcSwiftUtil.errorMessage(from: error as NSError), NSNull()])
38
+ return
39
+ }
40
+
41
+ callback([NSNull(), response ?? [], sw1 ?? 0, sw2 ?? 0])
42
+ }
43
+ }
44
+ )
45
+ }
46
+
47
+ @objc(sendCommandAPDUBytesWithSession:bytes:completion:)
48
+ static func sendCommandAPDUBytes(
49
+ with session: NFCTagReaderSession,
50
+ bytes: [NSNumber],
51
+ completion: @escaping RNNfcIsoDepResultBlock
52
+ ) {
53
+ guard let connectedTag = session.connectedTag else {
54
+ completion(nil, nil, nil, NSError(domain: "RNNfcTechSwiftService", code: 1, userInfo: [NSLocalizedDescriptionKey: "Not connected"]))
55
+ return
56
+ }
57
+
58
+ let iso7816Tag = extractIso7816Tag(from: connectedTag)
59
+ guard let iso7816Tag else {
60
+ completion(nil, nil, nil, NSError(domain: "RNNfcTechSwiftService", code: 4, userInfo: [NSLocalizedDescriptionKey: "not an iso7816 tag"]))
61
+ return
62
+ }
63
+
64
+ let data = RNNfcSwiftUtil.data(from: bytes)
65
+ guard let apdu = NFCISO7816APDU(data: data) else {
66
+ completion(nil, nil, nil, NSError(domain: "RNNfcTechSwiftService", code: 5, userInfo: [NSLocalizedDescriptionKey: "invalid apdu data"]))
67
+ return
68
+ }
69
+
70
+ iso7816Tag.sendCommand(apdu: apdu) { response, sw1, sw2, error in
71
+ if let error {
72
+ completion(nil, nil, nil, error as NSError)
73
+ return
74
+ }
75
+
76
+ completion(
77
+ RNNfcSwiftUtil.numberArray(from: response),
78
+ NSNumber(value: Int(sw1)),
79
+ NSNumber(value: Int(sw2)),
80
+ nil
81
+ )
82
+ }
83
+ }
84
+
85
+ @objc(sendCommandAPDUWithSession:payload:completion:)
86
+ static func sendCommandAPDU(
87
+ with session: NFCTagReaderSession,
88
+ payload: NSDictionary,
89
+ completion: @escaping RNNfcIsoDepResultBlock
90
+ ) {
91
+ guard let connectedTag = session.connectedTag else {
92
+ completion(nil, nil, nil, NSError(domain: "RNNfcTechSwiftService", code: 1, userInfo: [NSLocalizedDescriptionKey: "Not connected"]))
93
+ return
94
+ }
95
+
96
+ let iso7816Tag = extractIso7816Tag(from: connectedTag)
97
+ guard let iso7816Tag else {
98
+ completion(nil, nil, nil, NSError(domain: "RNNfcTechSwiftService", code: 4, userInfo: [NSLocalizedDescriptionKey: "not an iso7816 tag"]))
99
+ return
100
+ }
101
+
102
+ guard
103
+ let cla = payload["cla"] as? NSNumber,
104
+ let ins = payload["ins"] as? NSNumber,
105
+ let p1 = payload["p1"] as? NSNumber,
106
+ let p2 = payload["p2"] as? NSNumber,
107
+ let dataArray = payload["data"] as? [NSNumber],
108
+ let le = payload["le"] as? NSNumber
109
+ else {
110
+ completion(nil, nil, nil, NSError(domain: "RNNfcTechSwiftService", code: 6, userInfo: [NSLocalizedDescriptionKey: "invalid apdu payload"]))
111
+ return
112
+ }
113
+
114
+ let data = RNNfcSwiftUtil.data(from: dataArray)
115
+ let apdu = NFCISO7816APDU(
116
+ instructionClass: cla.uint8Value,
117
+ instructionCode: ins.uint8Value,
118
+ p1Parameter: p1.uint8Value,
119
+ p2Parameter: p2.uint8Value,
120
+ data: data,
121
+ expectedResponseLength: le.intValue
122
+ )
123
+
124
+ iso7816Tag.sendCommand(apdu: apdu) { response, sw1, sw2, error in
125
+ if let error {
126
+ completion(nil, nil, nil, error as NSError)
127
+ return
128
+ }
129
+
130
+ completion(
131
+ RNNfcSwiftUtil.numberArray(from: response),
132
+ NSNumber(value: Int(sw1)),
133
+ NSNumber(value: Int(sw2)),
134
+ nil
135
+ )
136
+ }
137
+ }
138
+
139
+ private static func extractIso7816Tag(from connectedTag: NFCTag) -> NFCISO7816Tag? {
140
+ if case let .iso7816(tag) = connectedTag {
141
+ return tag
142
+ }
143
+ return nil
144
+ }
145
+ }
@@ -0,0 +1,61 @@
1
+ import CoreNFC
2
+ import Foundation
3
+
4
+ public extension RNNfcManager {
5
+ @objc(sendMifareCommand:callback:)
6
+ static func sendMifareCommand(
7
+ _ bytes: [NSNumber],
8
+ callback: @escaping RNNfcResponseSenderBlock
9
+ ) {
10
+ forwardWithTagSessionSupport(
11
+ isTagSessionSupported(),
12
+ callback: callback,
13
+ operation: { tagSession in
14
+ sendMifareCommand(with: tagSession, bytes: bytes) { response, error in
15
+ if let error {
16
+ callback([RNNfcSwiftUtil.errorMessage(from: error as NSError), NSNull()])
17
+ return
18
+ }
19
+
20
+ callback([NSNull(), response ?? []])
21
+ }
22
+ }
23
+ )
24
+ }
25
+
26
+ @objc(sendMifareCommandWithSession:bytes:completion:)
27
+ static func sendMifareCommand(
28
+ with session: NFCTagReaderSession,
29
+ bytes: [NSNumber],
30
+ completion: @escaping RNNfcDataResultBlock
31
+ ) {
32
+ guard let connectedTag = session.connectedTag else {
33
+ completion(nil, NSError(domain: "RNNfcTechSwiftService", code: 1, userInfo: [NSLocalizedDescriptionKey: "Not connected"]))
34
+ return
35
+ }
36
+
37
+ let mifareTag = extractMifareTag(from: connectedTag)
38
+ guard let mifareTag else {
39
+ completion(nil, NSError(domain: "RNNfcTechSwiftService", code: 2, userInfo: [NSLocalizedDescriptionKey: "not a mifare tag"]))
40
+ return
41
+ }
42
+
43
+ let data = RNNfcSwiftUtil.data(from: bytes)
44
+ NSLog("input bytes: %@", RNNfcSwiftUtil.hexString(from: data))
45
+ mifareTag.sendMiFareCommand(commandPacket: data) { response, error in
46
+ if let error {
47
+ completion(nil, error as NSError)
48
+ return
49
+ }
50
+
51
+ completion(RNNfcSwiftUtil.numberArray(from: response), nil)
52
+ }
53
+ }
54
+
55
+ private static func extractMifareTag(from connectedTag: NFCTag) -> NFCMiFareTag? {
56
+ if case let .miFare(tag) = connectedTag {
57
+ return tag
58
+ }
59
+ return nil
60
+ }
61
+ }
@@ -0,0 +1,120 @@
1
+ import CoreNFC
2
+ import Foundation
3
+
4
+ public extension RNNfcManager {
5
+ @objc(getNdefMessageFromTagSession:callback:)
6
+ static func getNdefMessage(
7
+ from tagSession: NFCTagReaderSession?,
8
+ callback: @escaping RNNfcResponseSenderBlock
9
+ ) {
10
+ guard let ndefTag = requireConnectedNdefTag(from: tagSession) else {
11
+ callback(["No ndef available", NSNull()])
12
+ return
13
+ }
14
+
15
+ ndefTag.readNDEF { ndefMessage, error in
16
+ if let error {
17
+ callback([RNNfcSwiftUtil.errorMessage(from: error as NSError), NSNull()])
18
+ return
19
+ }
20
+
21
+ let converted = ndefMessage.map { convertNdefMessage($0) } ?? []
22
+ callback([NSNull(), ["ndefMessage": converted]])
23
+ }
24
+ }
25
+
26
+ @objc(writeNdefMessage:toTagSession:callback:)
27
+ static func writeNdefMessage(
28
+ _ bytes: [NSNumber],
29
+ to tagSession: NFCTagReaderSession?,
30
+ callback: @escaping RNNfcResponseSenderBlock
31
+ ) {
32
+ guard let ndefTag = requireConnectedNdefTag(from: tagSession) else {
33
+ callback(["No ndef available", NSNull()])
34
+ return
35
+ }
36
+
37
+ let data = RNNfcSwiftUtil.data(from: bytes)
38
+ guard let ndefMessage = NFCNDEFMessage(data: data) else {
39
+ callback(["invalid ndef msg"])
40
+ return
41
+ }
42
+
43
+ ndefTag.writeNDEF(ndefMessage) { error in
44
+ if let error {
45
+ callback([RNNfcSwiftUtil.errorMessage(from: error as NSError), NSNull()])
46
+ return
47
+ }
48
+
49
+ callback([])
50
+ }
51
+ }
52
+
53
+ @objc(makeTagReadOnlyFromTagSession:callback:)
54
+ static func makeTagReadOnly(
55
+ from tagSession: NFCTagReaderSession?,
56
+ callback: @escaping RNNfcResponseSenderBlock
57
+ ) {
58
+ guard let ndefTag = requireConnectedNdefTag(from: tagSession) else {
59
+ callback(["No ndef available", NSNull()])
60
+ return
61
+ }
62
+
63
+ ndefTag.writeLock { error in
64
+ if let error {
65
+ callback([RNNfcSwiftUtil.errorMessage(from: error as NSError), NSNull()])
66
+ return
67
+ }
68
+
69
+ callback([])
70
+ }
71
+ }
72
+
73
+ @objc(queryNdefStatusFromTagSession:callback:)
74
+ static func queryNdefStatus(
75
+ from tagSession: NFCTagReaderSession?,
76
+ callback: @escaping RNNfcResponseSenderBlock
77
+ ) {
78
+ guard let ndefTag = requireConnectedNdefTag(from: tagSession) else {
79
+ callback(["No ndef available", NSNull()])
80
+ return
81
+ }
82
+
83
+ ndefTag.queryNDEFStatus { status, capacity, error in
84
+ if let error {
85
+ callback([RNNfcSwiftUtil.errorMessage(from: error as NSError), NSNull()])
86
+ return
87
+ }
88
+
89
+ let payload: [String: NSNumber] = [
90
+ "status": NSNumber(value: Int(status.rawValue)),
91
+ "capacity": NSNumber(value: Int(capacity)),
92
+ ]
93
+ callback([NSNull(), payload])
94
+ }
95
+ }
96
+
97
+ private static func requireConnectedNdefTag(from tagSession: NFCTagReaderSession?) -> NFCNDEFTag? {
98
+ guard let connectedTag = tagSession?.connectedTag else {
99
+ return nil
100
+ }
101
+
102
+ return getNdefTagHandle(from: connectedTag)
103
+ }
104
+
105
+ private static func getNdefTagHandle(from tag: NFCTag) -> NFCNDEFTag? {
106
+ switch tag {
107
+ case .miFare(let mifareTag):
108
+ return mifareTag
109
+ case .iso7816(let iso7816Tag):
110
+ return iso7816Tag
111
+ case .feliCa(let felicaTag):
112
+ return felicaTag
113
+ case .iso15693(let iso15693Tag):
114
+ return iso15693Tag
115
+ @unknown default:
116
+ return nil
117
+ }
118
+ }
119
+
120
+ }
@@ -0,0 +1,251 @@
1
+ #import <Foundation/Foundation.h>
2
+ #import <CoreNFC/CoreNFC.h>
3
+
4
+ NS_ASSUME_NONNULL_BEGIN
5
+
6
+ typedef void (^RNNfcDataResultBlock)(NSArray<NSNumber *> * _Nullable response, NSError * _Nullable error);
7
+ typedef void (^RNNfcIsoDepResultBlock)(NSArray<NSNumber *> * _Nullable response, NSNumber * _Nullable sw1, NSNumber * _Nullable sw2, NSError * _Nullable error);
8
+ typedef void (^RNNfcIso15693SystemInfoResultBlock)(NSDictionary * _Nullable systemInfo, NSError * _Nullable error);
9
+ typedef void (^RNNfcIso15693BlocksResultBlock)(NSArray * _Nullable blocks, NSError * _Nullable error);
10
+ typedef void (^RNNfcVoidResultBlock)(NSError * _Nullable error);
11
+ typedef void (^RNNfcIso15693SendRequestResultBlock)(NSNumber * _Nullable responseFlag, NSArray<NSNumber *> * _Nullable response, NSError * _Nullable error);
12
+ typedef void (^RNNfcResponseSenderBlock)(NSArray * _Nonnull response);
13
+
14
+ @interface RNNfcManager : NSObject
15
+
16
+ + (BOOL)isTagSessionSupported;
17
+ + (BOOL)isIso15693Supported;
18
+
19
+ + (void)isSupported:(NSString *)tech
20
+ callback:(RNNfcResponseSenderBlock)callback;
21
+
22
+ + (void)startWithCallback:(RNNfcResponseSenderBlock)callback;
23
+
24
+ + (void)resetRuntimeState;
25
+ + (void)invalidateRuntimeState;
26
+
27
+ + (NSObject *)createSessionDelegateProxy;
28
+
29
+ + (BOOL)ensureNoActiveSessionForCallback:(RNNfcResponseSenderBlock)callback;
30
+
31
+ + (void)createAndBeginTagSessionWithTechs:(NSArray<NSString *> *)techs
32
+ options:(NSDictionary *)options
33
+ callback:(RNNfcResponseSenderBlock)callback;
34
+
35
+ + (void)createAndBeginNdefSessionWithOptions:(NSDictionary *)options
36
+ callback:(RNNfcResponseSenderBlock)callback;
37
+
38
+ + (NFCTagReaderSession * _Nullable)requireTagSessionRegisteredWithCallback:(RNNfcResponseSenderBlock)callback
39
+ noSessionMessage:(NSString *)noSessionMessage;
40
+
41
+ + (NFCNDEFReaderSession * _Nullable)requireNdefSessionRegisteredWithCallback:(RNNfcResponseSenderBlock)callback
42
+ noSessionMessage:(NSString *)noSessionMessage;
43
+
44
+ + (void)invalidateActiveSessionWithCallback:(RNNfcResponseSenderBlock)callback;
45
+
46
+ + (void)invalidateSessionWithCallback:(RNNfcResponseSenderBlock)callback;
47
+
48
+ + (void)invalidateActiveSessionWithErrorMessage:(NSString *)errorMessage
49
+ callback:(RNNfcResponseSenderBlock)callback;
50
+
51
+ + (void)invalidateSessionWithErrorMessage:(NSString *)errorMessage
52
+ callback:(RNNfcResponseSenderBlock)callback;
53
+
54
+ + (void)restartTechnologyRequestWithCallback:(RNNfcResponseSenderBlock)callback;
55
+
56
+ + (void)cancelTechnologyRequestWithCallback:(RNNfcResponseSenderBlock)callback;
57
+
58
+ + (void)unregisterTagEventWithCallback:(RNNfcResponseSenderBlock)callback;
59
+
60
+ + (void)setAlertMessage:(NSString *)alertMessage
61
+ callback:(RNNfcResponseSenderBlock)callback;
62
+
63
+ + (void)isSessionAvailableWithCallback:(RNNfcResponseSenderBlock)callback;
64
+
65
+ + (void)isTagSessionAvailableWithCallback:(RNNfcResponseSenderBlock)callback;
66
+
67
+ + (void)sendMifareCommand:(NSArray<NSNumber *> *)bytes
68
+ callback:(RNNfcResponseSenderBlock)callback;
69
+
70
+ + (void)sendFelicaCommand:(NSArray<NSNumber *> *)bytes
71
+ callback:(RNNfcResponseSenderBlock)callback;
72
+
73
+ + (void)sendCommandAPDUBytes:(NSArray<NSNumber *> *)bytes
74
+ callback:(RNNfcResponseSenderBlock)callback;
75
+
76
+ + (void)sendCommandAPDU:(NSDictionary *)payload
77
+ callback:(RNNfcResponseSenderBlock)callback;
78
+
79
+ + (void)getNdefMessageFromTagSession:(NFCTagReaderSession * _Nullable)tagSession
80
+ callback:(RNNfcResponseSenderBlock)callback;
81
+
82
+ + (void)writeNdefMessage:(NSArray<NSNumber *> *)bytes
83
+ toTagSession:(NFCTagReaderSession * _Nullable)tagSession
84
+ callback:(RNNfcResponseSenderBlock)callback;
85
+
86
+ + (void)makeTagReadOnlyFromTagSession:(NFCTagReaderSession * _Nullable)tagSession
87
+ callback:(RNNfcResponseSenderBlock)callback;
88
+
89
+ + (void)queryNdefStatusFromTagSession:(NFCTagReaderSession * _Nullable)tagSession
90
+ callback:(RNNfcResponseSenderBlock)callback;
91
+
92
+ + (NSArray *)convertNdefMessage:(NFCNDEFMessage *)message;
93
+
94
+ + (void)getTagWithCallback:(RNNfcResponseSenderBlock)callback;
95
+
96
+ + (void)getTagFromTagSession:(NFCTagReaderSession * _Nullable)tagSession
97
+ callback:(RNNfcResponseSenderBlock)callback;
98
+
99
+ + (void)getNdefMessageWithCallback:(RNNfcResponseSenderBlock)callback;
100
+
101
+ + (void)writeNdefMessage:(NSArray<NSNumber *> *)bytes
102
+ options:(NSDictionary *)options
103
+ callback:(RNNfcResponseSenderBlock)callback;
104
+
105
+ + (void)makeReadOnlyWithCallback:(RNNfcResponseSenderBlock)callback;
106
+
107
+ + (void)queryNdefStatusWithCallback:(RNNfcResponseSenderBlock)callback;
108
+
109
+ + (void)iso15693GetSystemInfo:(NSNumber *)flags
110
+ callback:(RNNfcResponseSenderBlock)callback;
111
+
112
+ + (void)iso15693ReadSingleBlock:(NSDictionary *)options
113
+ callback:(RNNfcResponseSenderBlock)callback;
114
+
115
+ + (void)iso15693ReadMultipleBlocks:(NSDictionary *)options
116
+ callback:(RNNfcResponseSenderBlock)callback;
117
+
118
+ + (void)iso15693WriteSingleBlock:(NSDictionary *)options
119
+ callback:(RNNfcResponseSenderBlock)callback;
120
+
121
+ + (void)iso15693LockBlock:(NSDictionary *)options
122
+ callback:(RNNfcResponseSenderBlock)callback;
123
+
124
+ + (void)iso15693WriteAFI:(NSDictionary *)options
125
+ callback:(RNNfcResponseSenderBlock)callback;
126
+
127
+ + (void)iso15693LockAFI:(NSDictionary *)options
128
+ callback:(RNNfcResponseSenderBlock)callback;
129
+
130
+ + (void)iso15693WriteDSFID:(NSDictionary *)options
131
+ callback:(RNNfcResponseSenderBlock)callback;
132
+
133
+ + (void)iso15693LockDSFID:(NSDictionary *)options
134
+ callback:(RNNfcResponseSenderBlock)callback;
135
+
136
+ + (void)iso15693ResetToReady:(NSDictionary *)options
137
+ callback:(RNNfcResponseSenderBlock)callback;
138
+
139
+ + (void)iso15693Select:(NSDictionary *)options
140
+ callback:(RNNfcResponseSenderBlock)callback;
141
+
142
+ + (void)iso15693StayQuiet:(RNNfcResponseSenderBlock)callback;
143
+
144
+ + (void)iso15693CustomCommand:(NSDictionary *)options
145
+ callback:(RNNfcResponseSenderBlock)callback;
146
+
147
+ + (void)iso15693SendRequest:(NSDictionary *)options
148
+ callback:(RNNfcResponseSenderBlock)callback;
149
+
150
+ + (void)iso15693ExtendedReadSingleBlock:(NSDictionary *)options
151
+ callback:(RNNfcResponseSenderBlock)callback;
152
+
153
+ + (void)iso15693ExtendedReadMultipleBlocks:(NSDictionary *)options
154
+ callback:(RNNfcResponseSenderBlock)callback;
155
+
156
+ + (void)iso15693ExtendedWriteSingleBlock:(NSDictionary *)options
157
+ callback:(RNNfcResponseSenderBlock)callback;
158
+
159
+ + (void)iso15693ExtendedLockBlock:(NSDictionary *)options
160
+ callback:(RNNfcResponseSenderBlock)callback;
161
+
162
+ + (void)sendMifareCommandWithSession:(NFCTagReaderSession *)session
163
+ bytes:(NSArray<NSNumber *> *)bytes
164
+ completion:(RNNfcDataResultBlock)completion;
165
+
166
+ + (void)sendFelicaCommandWithSession:(NFCTagReaderSession *)session
167
+ bytes:(NSArray<NSNumber *> *)bytes
168
+ completion:(RNNfcDataResultBlock)completion;
169
+
170
+ + (void)sendCommandAPDUBytesWithSession:(NFCTagReaderSession *)session
171
+ bytes:(NSArray<NSNumber *> *)bytes
172
+ completion:(RNNfcIsoDepResultBlock)completion;
173
+
174
+ + (void)sendCommandAPDUWithSession:(NFCTagReaderSession *)session
175
+ payload:(NSDictionary *)payload
176
+ completion:(RNNfcIsoDepResultBlock)completion;
177
+
178
+ + (void)iso15693GetSystemInfoWithSession:(NFCTagReaderSession *)session
179
+ flags:(NSNumber *)flags
180
+ completion:(RNNfcIso15693SystemInfoResultBlock)completion;
181
+
182
+ + (void)iso15693ReadSingleBlockWithSession:(NFCTagReaderSession *)session
183
+ options:(NSDictionary *)options
184
+ completion:(RNNfcDataResultBlock)completion;
185
+
186
+ + (void)iso15693ReadMultipleBlocksWithSession:(NFCTagReaderSession *)session
187
+ options:(NSDictionary *)options
188
+ completion:(RNNfcIso15693BlocksResultBlock)completion;
189
+
190
+ + (void)iso15693WriteSingleBlockWithSession:(NFCTagReaderSession *)session
191
+ options:(NSDictionary *)options
192
+ completion:(RNNfcVoidResultBlock)completion;
193
+
194
+ + (void)iso15693LockBlockWithSession:(NFCTagReaderSession *)session
195
+ options:(NSDictionary *)options
196
+ completion:(RNNfcVoidResultBlock)completion;
197
+
198
+ + (void)iso15693WriteAFIWithSession:(NFCTagReaderSession *)session
199
+ options:(NSDictionary *)options
200
+ completion:(RNNfcVoidResultBlock)completion;
201
+
202
+ + (void)iso15693LockAFIWithSession:(NFCTagReaderSession *)session
203
+ options:(NSDictionary *)options
204
+ completion:(RNNfcVoidResultBlock)completion;
205
+
206
+ + (void)iso15693WriteDSFIDWithSession:(NFCTagReaderSession *)session
207
+ options:(NSDictionary *)options
208
+ completion:(RNNfcVoidResultBlock)completion;
209
+
210
+ + (void)iso15693LockDSFIDWithSession:(NFCTagReaderSession *)session
211
+ options:(NSDictionary *)options
212
+ completion:(RNNfcVoidResultBlock)completion;
213
+
214
+ + (void)iso15693ResetToReadyWithSession:(NFCTagReaderSession *)session
215
+ options:(NSDictionary *)options
216
+ completion:(RNNfcVoidResultBlock)completion;
217
+
218
+ + (void)iso15693SelectWithSession:(NFCTagReaderSession *)session
219
+ options:(NSDictionary *)options
220
+ completion:(RNNfcVoidResultBlock)completion;
221
+
222
+ + (void)iso15693StayQuietWithSession:(NFCTagReaderSession *)session
223
+ completion:(RNNfcVoidResultBlock)completion;
224
+
225
+ + (void)iso15693CustomCommandWithSession:(NFCTagReaderSession *)session
226
+ options:(NSDictionary *)options
227
+ completion:(RNNfcDataResultBlock)completion;
228
+
229
+ + (void)iso15693SendRequestWithSession:(NFCTagReaderSession *)session
230
+ options:(NSDictionary *)options
231
+ completion:(RNNfcIso15693SendRequestResultBlock)completion;
232
+
233
+ + (void)iso15693ExtendedReadSingleBlockWithSession:(NFCTagReaderSession *)session
234
+ options:(NSDictionary *)options
235
+ completion:(RNNfcDataResultBlock)completion;
236
+
237
+ + (void)iso15693ExtendedReadMultipleBlocksWithSession:(NFCTagReaderSession *)session
238
+ options:(NSDictionary *)options
239
+ completion:(RNNfcIso15693BlocksResultBlock)completion;
240
+
241
+ + (void)iso15693ExtendedWriteSingleBlockWithSession:(NFCTagReaderSession *)session
242
+ options:(NSDictionary *)options
243
+ completion:(RNNfcVoidResultBlock)completion;
244
+
245
+ + (void)iso15693ExtendedLockBlockWithSession:(NFCTagReaderSession *)session
246
+ options:(NSDictionary *)options
247
+ completion:(RNNfcVoidResultBlock)completion;
248
+
249
+ @end
250
+
251
+ NS_ASSUME_NONNULL_END