@urovotest/urovosdk-docs-mcp 1.0.1

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 (42) hide show
  1. package/README.md +176 -0
  2. package/docs/00-overview.md +37 -0
  3. package/docs/01-integration/android-permissions.md +22 -0
  4. package/docs/01-integration/quickstart-zh.md +54 -0
  5. package/docs/02-reference/emv/emv-api.md +3308 -0
  6. package/docs/02-reference/emv/emv-appendix.md +112 -0
  7. package/docs/02-reference/emv/emv-callback.md +1155 -0
  8. package/docs/02-reference/emv/emv-enum.md +324 -0
  9. package/docs/02-reference/error-codes.md +59 -0
  10. package/docs/02-reference/general/beeper.md +160 -0
  11. package/docs/02-reference/general/devicemanager.md +460 -0
  12. package/docs/02-reference/general/insertcardreader.md +307 -0
  13. package/docs/02-reference/general/install-manager.md +202 -0
  14. package/docs/02-reference/general/led-light.md +144 -0
  15. package/docs/02-reference/general/magcardreader.md +191 -0
  16. package/docs/02-reference/general/pinpad.md +3309 -0
  17. package/docs/02-reference/general/printer.md +1410 -0
  18. package/docs/02-reference/general/psam2.md +55 -0
  19. package/docs/02-reference/general/rfcardreader.md +1090 -0
  20. package/docs/02-reference/general/scanner-custom.md +196 -0
  21. package/docs/02-reference/general/scanner.md +214 -0
  22. package/docs/02-reference/general/sdk-log-output-management.md +124 -0
  23. package/docs/02-reference/general/serial-port-deprecated-suggest-using-module-14-serialtool.md +406 -0
  24. package/docs/02-reference/general/serial-port.md +326 -0
  25. package/docs/02-reference/general/sle4428-4436-4442.md +1890 -0
  26. package/docs/02-reference/general/system-manager.md +212 -0
  27. package/docs/02-reference/module-index.md +30 -0
  28. package/docs/02-reference/source-emv_sdk.md +3927 -0
  29. package/docs/02-reference/source-general_sdk.md +8978 -0
  30. package/docs/02-reference/undocumented/kiosk-lock-task.md +92 -0
  31. package/docs/03-demo/activity-map.md +27 -0
  32. package/docs/api-registry.json +4733 -0
  33. package/docs/search-index.json +2688 -0
  34. package/docs/source/emv_sdk.md +3927 -0
  35. package/docs/source/general_sdk.md +8978 -0
  36. package/docs/source/kiosk_lock_task.md +86 -0
  37. package/package.json +36 -0
  38. package/src/launch.js +22 -0
  39. package/src/lib/check-update.js +92 -0
  40. package/src/lib/create-mcp-server.js +90 -0
  41. package/src/lib/docs-tools.js +206 -0
  42. package/src/server.js +10 -0
@@ -0,0 +1,1155 @@
1
+ ---
2
+ title: EMV Callback API
3
+ module: EMV Callback
4
+ domain: emv
5
+ tags: ["emv", "emv-callback", "emv callback"]
6
+ ---
7
+ # EMV Callback
8
+
9
+ 共 **19** 个 API/条目,来源 `emv_sdk.md`。
10
+
11
+ ## API 索引
12
+
13
+ | 方法 | 类路径 | Demo Activity |
14
+ |------|--------|---------------|
15
+ | [onRequestSetAmount](#onrequestsetamount) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
16
+ | [onRequestConfirmCardno](#onrequestconfirmcardno) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
17
+ | [onReturnCheckCardResult](#onreturncheckcardresult) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
18
+ | [onRequestSelectApplication](#onrequestselectapplication) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
19
+ | [onRequestPinEntry](#onrequestpinentry) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
20
+ | [onRequestFinalConfirm](#onrequestfinalconfirm) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
21
+ | [onRequestOnlineProcess](#onrequestonlineprocess) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
22
+ | [onReturnBatchData](#onreturnbatchdata) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
23
+ | [onReturnTransactionResult](#onreturntransactionresult) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
24
+ | [onRequestDisplayText](#onrequestdisplaytext) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
25
+ | [onRequestOfflinePinEntry](#onrequestofflinepinentry) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
26
+ | [onRequestOfflinePINVerify](#onrequestofflinepinverify) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
27
+ | [onReturnIssuerScriptResult](#onreturnissuerscriptresult) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
28
+ | [onNFCrequestTipsConfirm](#onnfcrequesttipsconfirm) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
29
+ | [onNFCrequestOnline](#onnfcrequestonline) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
30
+ | [onNFCrequestImportPin](#onnfcrequestimportpin) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
31
+ | [onNFCTransResult](#onnfctransresult) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
32
+ | [onNFCErrorInfor](#onnfcerrorinfor) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
33
+ | [onReturnNfcCardData](#onreturnnfccarddata) | `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener` | EmvActivityNew |
34
+
35
+ ## onRequestSetAmount
36
+
37
+ atstartEmv,thiscallback will not betriggered.Tocancelthe
38
+ process,call cancelSetAmount.
39
+
40
+ ```java
41
+ voidonRequestSetAmount()
42
+ ```
43
+
44
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
45
+ - **Demo Activity(参考):** EmvActivityNew
46
+ - **源文档章节:** 2.01
47
+
48
+ - Source section: `2.01`
49
+
50
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
51
+
52
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
53
+
54
+
55
+
56
+ Purpose:
57
+ atstartEmv,thiscallback will not betriggered.Tocancelthe
58
+ process,call cancelSetAmount.
59
+
60
+
61
+ Signature/prototype:
62
+ ```java
63
+ voidonRequestSetAmount()
64
+ ```
65
+
66
+
67
+ Return value:
68
+ None
69
+
70
+
71
+ Simplified example:
72
+ ```java
73
+ public void onRequestSetAmount() {
74
+ emv.setAmountEx(100L, 0L);
75
+ }
76
+ ```
77
+
78
+
79
+ Source details:
80
+ ```text
81
+ Declare: voidonRequestSetAmount()
82
+ Requestinput of amountin theEMV process.If amountis input
83
+ Description: atstartEmv,thiscallback will not betriggered.Tocancelthe
84
+ process,call cancelSetAmount.
85
+ Return: None
86
+ ```
87
+
88
+ ## onRequestConfirmCardno
89
+
90
+ Confirm theCardnumber,shouldcallsendConfirmCardnoResult(true)
91
+
92
+ ```java
93
+ voidonRequestConfirmCardno()
94
+ ```
95
+
96
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
97
+ - **Demo Activity(参考):** EmvActivityNew
98
+ - **源文档章节:** 2.02
99
+
100
+ - Source section: `2.02`
101
+
102
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
103
+
104
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
105
+
106
+
107
+
108
+ Purpose:
109
+ Confirm theCardnumber,shouldcallsendConfirmCardnoResult(true)
110
+
111
+
112
+ Signature/prototype:
113
+ ```java
114
+ voidonRequestConfirmCardno()
115
+ ```
116
+
117
+
118
+ Simplified example:
119
+ ```java
120
+ public void onRequestConfirmCardno() {
121
+ emv.sendConfirmCardnoResult(true);
122
+ }
123
+ ```
124
+
125
+
126
+ Source details:
127
+ ```text
128
+ Declare: voidonRequestConfirmCardno()
129
+ Description:
130
+ Confirm theCardnumber,shouldcallsendConfirmCardnoResult(true)
131
+ Return:
132
+ ```
133
+
134
+ ## onReturnCheckCardResult
135
+
136
+ card.
137
+
138
+ •Seeenum CheckCardResult
139
+ Key: StripInfo
140
+
141
+ ```java
142
+ checkCardResult, Hashtable<String,String>
143
+ decodeData)
144
+ Returntheresultsinresponsetoaswiped, insertedor tapped
145
+ ```
146
+
147
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
148
+ - **Demo Activity(参考):** EmvActivityNew
149
+ - **源文档章节:** 2.03
150
+
151
+ - Source section: `2.03`
152
+
153
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
154
+
155
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
156
+
157
+
158
+
159
+ Purpose:
160
+ card.
161
+
162
+ •Seeenum CheckCardResult
163
+ Key: StripInfo
164
+
165
+
166
+ Signature/prototype:
167
+ ```java
168
+ checkCardResult, Hashtable<String,String>
169
+ decodeData)
170
+ Returntheresultsinresponsetoaswiped, insertedor tapped
171
+ ```
172
+
173
+
174
+ Return value:
175
+ CardNo
176
+
177
+
178
+ Source details:
179
+ ```text
180
+ voidonReturnCheckCardResult(CheckCardResult
181
+ Declare: checkCardResult, Hashtable<String,String>
182
+ decodeData)
183
+ Returntheresultsinresponsetoaswiped, insertedor tapped
184
+ Description:
185
+ card.
186
+
187
+ •Seeenum CheckCardResult
188
+ Key: StripInfo
189
+ Return: CardNo
190
+ ```
191
+
192
+ ## onRequestSelectApplication
193
+
194
+ canceltheprocess, call cancelSelectApplication.
195
+ Returnalist of applications supportedbythemPOSdevice and
196
+
197
+ ```java
198
+ voidonRequestSelectApplication(ArrayList<String> appList)
199
+ ```
200
+
201
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
202
+ - **Demo Activity(参考):** EmvActivityNew
203
+ - **源文档章节:** 2.04
204
+
205
+ - Source section: `2.04`
206
+
207
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
208
+
209
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
210
+
211
+
212
+
213
+ Purpose:
214
+ canceltheprocess, call cancelSelectApplication.
215
+ Returnalist of applications supportedbythemPOSdevice and
216
+
217
+
218
+ Signature/prototype:
219
+ ```java
220
+ voidonRequestSelectApplication(ArrayList<String> appList)
221
+ ```
222
+
223
+
224
+ Return value:
225
+ theEMV chipcard.Theapplications aresortedbypriority,where
226
+ index0 isthehighestpriority.
227
+
228
+
229
+ Simplified example:
230
+ ```java
231
+ public void onRequestSelectApplication(ArrayList<String> apps) {
232
+ emv.selectApplication(0);
233
+ }
234
+ ```
235
+
236
+
237
+ Source details:
238
+ ```text
239
+ Declare: voidonRequestSelectApplication(ArrayList<String> appList)
240
+ Requestselection of anapplication from thereturnedlist.To
241
+ Description:
242
+ canceltheprocess, call cancelSelectApplication.
243
+ Returnalist of applications supportedbythemPOSdevice and
244
+ Return: theEMV chipcard.Theapplications aresortedbypriority,where
245
+ index0 isthehighestpriority.
246
+ ```
247
+
248
+ ## onRequestPinEntry
249
+
250
+ theprocess, call cancelPinEntry.This callbackcan betriggered
251
+ bystartKernel.
252
+ IndicatethePINentrysource, seePinEntrySource
253
+
254
+ ```java
255
+ voidonRequestPinEntry(PinEntrySource pinEntrySource)
256
+ ```
257
+
258
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
259
+ - **Demo Activity(参考):** EmvActivityNew
260
+ - **源文档章节:** 2.05
261
+
262
+ - Source section: `2.05`
263
+
264
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
265
+
266
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
267
+
268
+
269
+
270
+ Purpose:
271
+ theprocess, call cancelPinEntry.This callbackcan betriggered
272
+ bystartKernel.
273
+ IndicatethePINentrysource, seePinEntrySource
274
+
275
+
276
+ Signature/prototype:
277
+ ```java
278
+ voidonRequestPinEntry(PinEntrySource pinEntrySource)
279
+ ```
280
+
281
+
282
+ Return value:
283
+ enumeration.
284
+
285
+
286
+ Simplified example:
287
+ ```java
288
+ public void onRequestPinEntry(ContantPara.PinEntrySource source) {
289
+ emv.sendPinEntry();
290
+ }
291
+ ```
292
+
293
+
294
+ Source details:
295
+ ```text
296
+ Declare: voidonRequestPinEntry(PinEntrySource pinEntrySource)
297
+ RequestPIN entryfrom thespecifiedPinEntrySource.Tocancel
298
+ Description: theprocess, call cancelPinEntry.This callbackcan betriggered
299
+ bystartKernel.
300
+ IndicatethePINentrysource, seePinEntrySource
301
+ Return:
302
+ enumeration.
303
+ ```
304
+
305
+ ## onRequestFinalConfirm
306
+
307
+ thefirst generateAC command.Toproceedor cancelthe
308
+ transaction, call sendFinalConfirmResult.
309
+
310
+ ```java
311
+ voidonRequestFinalConfirm()
312
+ ```
313
+
314
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
315
+ - **Demo Activity(参考):** EmvActivityNew
316
+ - **源文档章节:** 2.06
317
+
318
+ - Source section: `2.06`
319
+
320
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
321
+
322
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
323
+
324
+
325
+
326
+ Purpose:
327
+ thefirst generateAC command.Toproceedor cancelthe
328
+ transaction, call sendFinalConfirmResult.
329
+
330
+
331
+ Signature/prototype:
332
+ ```java
333
+ voidonRequestFinalConfirm()
334
+ ```
335
+
336
+
337
+ Return value:
338
+ None
339
+
340
+
341
+ Source details:
342
+ ```text
343
+ Declare: voidonRequestFinalConfirm()
344
+ TheEMV processrequest fora finalconfirmation beforecalling
345
+ Description: thefirst generateAC command.Toproceedor cancelthe
346
+ transaction, call sendFinalConfirmResult.
347
+ Return: None
348
+ ```
349
+
350
+ ## onRequestOnlineProcess
351
+
352
+ transaction, call sendOnlineProcessResult.
353
+
354
+ Aset of transaction datainTag-Length-Valueformatthat should
355
+ besent backtoonline server.
356
+
357
+ ```java
358
+ voidonRequestOnlineProcess(String tlv,StringdataKsn)
359
+ ```
360
+
361
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
362
+ - **Demo Activity(参考):** EmvActivityNew
363
+ - **源文档章节:** 2.07
364
+
365
+ - Source section: `2.07`
366
+
367
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
368
+
369
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
370
+
371
+
372
+
373
+ Purpose:
374
+ transaction, call sendOnlineProcessResult.
375
+
376
+ Aset of transaction datainTag-Length-Valueformatthat should
377
+ besent backtoonline server.
378
+
379
+
380
+ Signature/prototype:
381
+ ```java
382
+ voidonRequestOnlineProcess(String tlv,StringdataKsn)
383
+ ```
384
+
385
+
386
+ Return value:
387
+ Tlv:TLVdata
388
+ dataKsn:KSN fordataencryption
389
+
390
+
391
+ Simplified example:
392
+ ```java
393
+ public void onRequestOnlineProcess(String cardTlvData, String dataKsn) {
394
+ // Send cardTlvData as field 55, then return issuer TLV.
395
+ emv.sendOnlineProcessResult("8A023030");
396
+ }
397
+ ```
398
+
399
+
400
+ Source details:
401
+ ```text
402
+ Declare: voidonRequestOnlineProcess(String tlv,StringdataKsn)
403
+ Requestthetransactiongo online.Toproceedor terminatethe
404
+ Description:
405
+ transaction, call sendOnlineProcessResult.
406
+
407
+ Aset of transaction datainTag-Length-Valueformatthat should
408
+ besent backtoonline server.
409
+ Return:
410
+ Tlv:TLVdata
411
+ dataKsn:KSN fordataencryption
412
+ ```
413
+
414
+ ## onReturnBatchData
415
+
416
+ Returnthebatchdataafter completionof an EMV transaction.
417
+ Aset of transaction datainTag-Length-Valueformatthat should
418
+
419
+ ```java
420
+ voidonReturnBatchData(String tlv)
421
+ ```
422
+
423
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
424
+ - **Demo Activity(参考):** EmvActivityNew
425
+ - **源文档章节:** 2.08
426
+
427
+ - Source section: `2.08`
428
+
429
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
430
+
431
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
432
+
433
+
434
+
435
+ Purpose:
436
+ Returnthebatchdataafter completionof an EMV transaction.
437
+ Aset of transaction datainTag-Length-Valueformatthat should
438
+
439
+
440
+ Signature/prototype:
441
+ ```java
442
+ voidonReturnBatchData(String tlv)
443
+ ```
444
+
445
+
446
+ Return value:
447
+ besent backtoserver forprocessing.(Usein offlineapprove)
448
+
449
+
450
+ Source details:
451
+ ```text
452
+ Declare: voidonReturnBatchData(String tlv)
453
+ Description: Returnthebatchdataafter completionof an EMV transaction.
454
+ Aset of transaction datainTag-Length-Valueformatthat should
455
+ Return:
456
+ besent backtoserver forprocessing.(Usein offlineapprove)
457
+ ```
458
+
459
+ ## onReturnTransactionResult
460
+
461
+ Returnthetransactionresult.
462
+ Indicatethetransactionresult, seeTransactionResult
463
+
464
+ ```java
465
+ voidonReturnTransactionResult(TransactionResult transResult)
466
+ ```
467
+
468
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
469
+ - **Demo Activity(参考):** EmvActivityNew
470
+ - **源文档章节:** 2.09
471
+
472
+ - Source section: `2.09`
473
+
474
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
475
+
476
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
477
+
478
+
479
+
480
+ Purpose:
481
+ Returnthetransactionresult.
482
+ Indicatethetransactionresult, seeTransactionResult
483
+
484
+
485
+ Signature/prototype:
486
+ ```java
487
+ voidonReturnTransactionResult(TransactionResult transResult)
488
+ ```
489
+
490
+
491
+ Return value:
492
+ enumeration.
493
+
494
+
495
+ Simplified example:
496
+ ```java
497
+ public void onReturnTransactionResult(ContantPara.TransactionResult result) {
498
+ if (result == ContantPara.TransactionResult.ONLINE_APPROVAL ||
499
+ result == ContantPara.TransactionResult.OFFLINE_APPROVAL) {
500
+ // complete approved transaction
501
+ } else {
502
+ // decline, reverse, or show failure according to business rules
503
+ }
504
+ }
505
+ ```
506
+
507
+
508
+ Source details:
509
+ ```text
510
+ Declare: voidonReturnTransactionResult(TransactionResult transResult)
511
+ Description: Returnthetransactionresult.
512
+ Indicatethetransactionresult, seeTransactionResult
513
+ Return:
514
+ enumeration.
515
+ ```
516
+
517
+ ## onRequestDisplayText
518
+
519
+ Returnthemessage toprompt customer.
520
+ Indicatethemessageto bedisplayed, seeDisplayText
521
+
522
+ ```java
523
+ voidonRequestDisplayText(DisplayText displayText)
524
+ ```
525
+
526
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
527
+ - **Demo Activity(参考):** EmvActivityNew
528
+ - **源文档章节:** 2.10
529
+
530
+ - Source section: `2.10`
531
+
532
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
533
+
534
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
535
+
536
+
537
+
538
+ Purpose:
539
+ Returnthemessage toprompt customer.
540
+ Indicatethemessageto bedisplayed, seeDisplayText
541
+
542
+
543
+ Signature/prototype:
544
+ ```java
545
+ voidonRequestDisplayText(DisplayText displayText)
546
+ ```
547
+
548
+
549
+ Return value:
550
+ enumeration.
551
+
552
+
553
+ Source details:
554
+ ```text
555
+ Declare: voidonRequestDisplayText(DisplayText displayText)
556
+ Description: Returnthemessage toprompt customer.
557
+ Indicatethemessageto bedisplayed, seeDisplayText
558
+ Return:
559
+ enumeration.
560
+ ```
561
+
562
+ ## onRequestOfflinePinEntry
563
+
564
+ Usuallynotuse
565
+
566
+ ```java
567
+ pinEntrySource,int PinTryCount);
568
+ ```
569
+
570
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
571
+ - **Demo Activity(参考):** EmvActivityNew
572
+ - **源文档章节:** 2.11
573
+
574
+ - Source section: `2.11`
575
+
576
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
577
+
578
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
579
+
580
+
581
+
582
+ Purpose:
583
+ Usuallynotuse
584
+
585
+
586
+ Signature/prototype:
587
+ ```java
588
+ pinEntrySource,int PinTryCount);
589
+ ```
590
+
591
+
592
+ Source details:
593
+ ```text
594
+ voidonRequestOfflinePinEntry(ContantPara.PinEntrySource
595
+ Declare:
596
+ pinEntrySource,int PinTryCount);
597
+ Description: Usuallynotuse
598
+ Return:
599
+ ```
600
+
601
+ ## onRequestOfflinePINVerify
602
+
603
+ Offlinepinverify(use inAndroidos8.0)
604
+
605
+ ```java
606
+ pinEntrySource,int pinEntryType, Bundlebundle);
607
+ ```
608
+
609
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
610
+ - **Demo Activity(参考):** EmvActivityNew
611
+ - **源文档章节:** 2.12
612
+
613
+ - Source section: `2.12`
614
+
615
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
616
+
617
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
618
+
619
+
620
+
621
+ Purpose:
622
+ Offlinepinverify(use inAndroidos8.0)
623
+
624
+
625
+ Signature/prototype:
626
+ ```java
627
+ pinEntrySource,int pinEntryType, Bundlebundle);
628
+ ```
629
+
630
+
631
+ Parameters:
632
+ pinEntrySource-seeeuam ContantPara.PinEntrySource
633
+
634
+ pinEntryType:0-----Offline PlainPin1--- OfflineencryptionPin
635
+ bundle:key: ModuleLen
636
+
637
+
638
+ Return value:
639
+ Module
640
+ ExponentLen
641
+ Exponent
642
+
643
+
644
+ Usage notes:
645
+ Pleasecheckthesampledemoapp
646
+
647
+
648
+ Simplified example:
649
+ ```java
650
+ public void onRequestOfflinePINVerify(ContantPara.PinEntrySource source, int type, Bundle data) {
651
+ int retries = emv.getOfflinePinTryTimes();
652
+ // collect offline PIN, then call sendOfflinePINVerifyResult(result) when required
653
+ }
654
+ ```
655
+
656
+
657
+ Source details:
658
+ ```text
659
+ voidonRequestOfflinePINVerify(ContantPara.PinEntrySource
660
+ Declare:
661
+ pinEntrySource,int pinEntryType, Bundlebundle);
662
+ Description: Offlinepinverify(use inAndroidos8.0)
663
+ Parameters: pinEntrySource-seeeuam ContantPara.PinEntrySource
664
+
665
+ pinEntryType:0-----Offline PlainPin1--- OfflineencryptionPin
666
+ bundle:key: ModuleLen
667
+ Return: Module
668
+ ExponentLen
669
+ Exponent
670
+ Remark: Pleasecheckthesampledemoapp
671
+ ```
672
+
673
+ ## onReturnIssuerScriptResult
674
+
675
+ Tlv:-field55data
676
+
677
+ ```java
678
+ onReturnIssuerScriptResult(ContantPara.IssuerScriptResult
679
+ scriptResult,String tlv)
680
+ ReturnScriptResult,tagDF31isscarptresult
681
+ ```
682
+
683
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
684
+ - **Demo Activity(参考):** EmvActivityNew
685
+ - **源文档章节:** 2.13
686
+
687
+ - Source section: `2.13`
688
+
689
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
690
+
691
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
692
+
693
+
694
+
695
+ Purpose:
696
+ Tlv:-field55data
697
+
698
+
699
+ Signature/prototype:
700
+ ```java
701
+ onReturnIssuerScriptResult(ContantPara.IssuerScriptResult
702
+ scriptResult,String tlv)
703
+ ReturnScriptResult,tagDF31isscarptresult
704
+ ```
705
+
706
+
707
+ Return value:
708
+ none
709
+
710
+
711
+ Source details:
712
+ ```text
713
+ void
714
+ Declare: onReturnIssuerScriptResult(ContantPara.IssuerScriptResult
715
+ scriptResult,String tlv)
716
+ ReturnScriptResult,tagDF31isscarptresult
717
+ Description:
718
+ Tlv:-field55data
719
+ Return: none
720
+ ```
721
+
722
+ ## onNFCrequestTipsConfirm
723
+
724
+ messageID:checkenumNfcTipMessageID
725
+ msg:
726
+ PLS_REMOVE_CARD,
727
+ PLS_USE_CONTACT_IC_CARD,//1
728
+ NEED_SIGNATURE,//2
729
+ END_APPLICATION,//3
730
+ SEE_PHONE_REMOVE_AND_PRESENT_CARD,//4
731
+ DISPLAY_BALANCE,//5
732
+
733
+ ```java
734
+ messageID,Stringmsg);
735
+ ```
736
+
737
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
738
+ - **Demo Activity(参考):** EmvActivityNew
739
+ - **源文档章节:** 2.14
740
+
741
+ - Source section: `2.14`
742
+
743
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
744
+
745
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
746
+
747
+
748
+
749
+ Purpose:
750
+ messageID:checkenumNfcTipMessageID
751
+ msg:
752
+ PLS_REMOVE_CARD,
753
+ PLS_USE_CONTACT_IC_CARD,//1
754
+ NEED_SIGNATURE,//2
755
+ END_APPLICATION,//3
756
+ SEE_PHONE_REMOVE_AND_PRESENT_CARD,//4
757
+ DISPLAY_BALANCE,//5
758
+
759
+
760
+ Signature/prototype:
761
+ ```java
762
+ messageID,Stringmsg);
763
+ ```
764
+
765
+
766
+ Parameters:
767
+ CARD_READ_OK,//6
768
+ PLS_SECOND_TAP_CARD,//7
769
+ APPLICATION_BLOCKED,//8
770
+ TRY_AGAIN_RESENT_CARD,//9
771
+ USE_MAG_STRIPE,//10
772
+ INSERT_SWIPE_OR_TRY_ANOTHER_CARD,//11
773
+ TERMINATE,
774
+ CARD_ERROR,
775
+ PROCESSING_ERROR,
776
+ UNKNOW
777
+
778
+
779
+ Usage notes:
780
+ CalledatprocessPayPassKernel
781
+
782
+
783
+ Source details:
784
+ ```text
785
+ void onNFCrequestTipsConfirm(ContantPara.NfcTipMessageID
786
+ Declare:
787
+ messageID,Stringmsg);
788
+ Requestapplicationdisplaymassage.
789
+ Description:
790
+ messageID:checkenumNfcTipMessageID
791
+ msg:
792
+ PLS_REMOVE_CARD,
793
+ PLS_USE_CONTACT_IC_CARD,//1
794
+ NEED_SIGNATURE,//2
795
+ END_APPLICATION,//3
796
+ SEE_PHONE_REMOVE_AND_PRESENT_CARD,//4
797
+ DISPLAY_BALANCE,//5
798
+ Parameters: CARD_READ_OK,//6
799
+ PLS_SECOND_TAP_CARD,//7
800
+ APPLICATION_BLOCKED,//8
801
+ TRY_AGAIN_RESENT_CARD,//9
802
+ USE_MAG_STRIPE,//10
803
+ INSERT_SWIPE_OR_TRY_ANOTHER_CARD,//11
804
+ TERMINATE,
805
+ CARD_ERROR,
806
+ PROCESSING_ERROR,
807
+ UNKNOW
808
+
809
+ Remark: CalledatprocessPayPassKernel
810
+ ```
811
+
812
+ ## onNFCrequestOnline
813
+
814
+ Whentransactionneedgoonline
815
+ Hashtable:
816
+ "KSN" :customformatksn,usuallynotuse
817
+
818
+ ```java
819
+ void onNFCrequestOnline (Hashtable<String,String>hashtable);
820
+ ```
821
+
822
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
823
+ - **Demo Activity(参考):** EmvActivityNew
824
+ - **源文档章节:** 2.15
825
+
826
+ - Source section: `2.15`
827
+
828
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
829
+
830
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
831
+
832
+
833
+
834
+ Purpose:
835
+ Whentransactionneedgoonline
836
+ Hashtable:
837
+ "KSN" :customformatksn,usuallynotuse
838
+
839
+
840
+ Signature/prototype:
841
+ ```java
842
+ void onNFCrequestOnline (Hashtable<String,String>hashtable);
843
+ ```
844
+
845
+
846
+ Parameters:
847
+ "TRACKDATA" :customformatdata,usuallynotuse
848
+ "EMVDATA":contactlesstransactionTLVdata
849
+
850
+
851
+ Return value:
852
+ If0x5A(PAN)isnotreturned,pleaseParsingtag0x57togetPAN,if0x57
853
+
854
+
855
+ Usage notes:
856
+ is not returned, please check whether it's a mstrip card. For mastercard
857
+ mstriptheTrack2EquivalentDatawillbesaveattag0x9f6b
858
+
859
+
860
+ Source details:
861
+ ```text
862
+ Declare: void onNFCrequestOnline (Hashtable<String,String>hashtable);
863
+ Description: Whentransactionneedgoonline
864
+ Hashtable:
865
+ "KSN" :customformatksn,usuallynotuse
866
+ Parameters: "TRACKDATA" :customformatdata,usuallynotuse
867
+ "EMVDATA":contactlesstransactionTLVdata
868
+ Return:
869
+ If0x5A(PAN)isnotreturned,pleaseParsingtag0x57togetPAN,if0x57
870
+ Remark: is not returned, please check whether it's a mstrip card. For mastercard
871
+ mstriptheTrack2EquivalentDatawillbesaveattag0x9f6b
872
+ ```
873
+
874
+ ## onNFCrequestImportPin
875
+
876
+ ParametersNotusednow
877
+ Callthepasswordkeyboardinthiscallbackfunction,youmayneedtoget
878
+ thecardnumber
879
+
880
+ ```java
881
+ voidonNFCrequestImportPin (int type, int lasttimeFlag, Stringamt);
882
+ ```
883
+
884
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
885
+ - **Demo Activity(参考):** EmvActivityNew
886
+ - **源文档章节:** 2.16
887
+
888
+ - Source section: `2.16`
889
+
890
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
891
+
892
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
893
+
894
+
895
+
896
+ Purpose:
897
+ ParametersNotusednow
898
+ Callthepasswordkeyboardinthiscallbackfunction,youmayneedtoget
899
+ thecardnumber
900
+
901
+
902
+ Signature/prototype:
903
+ ```java
904
+ voidonNFCrequestImportPin (int type, int lasttimeFlag, Stringamt);
905
+ ```
906
+
907
+
908
+ Parameters:
909
+ You can get the card number through tag5A, if tag5A is empty, you can
910
+ getthecardnumberthroughtag57
911
+
912
+
913
+ Source details:
914
+ ```text
915
+ Declare: voidonNFCrequestImportPin (int type, int lasttimeFlag, Stringamt);
916
+ ContactlessrequestimportPIN
917
+ Description:
918
+ ParametersNotusednow
919
+ Callthepasswordkeyboardinthiscallbackfunction,youmayneedtoget
920
+ thecardnumber
921
+ Parameters:
922
+ You can get the card number through tag5A, if tag5A is empty, you can
923
+ getthecardnumberthroughtag57
924
+ Return:
925
+ Remark:
926
+ ```
927
+
928
+ ## onNFCTransResult
929
+
930
+ Returnthetransactionresulttoapplication
931
+
932
+ Result:
933
+ CheckenumNfcTransResult
934
+ ONLINE_APPROVAL,
935
+ DECLINE_ONLINE,
936
+ TERMINATE,
937
+ OFFLINE_APPROVAL,
938
+
939
+ ```java
940
+ voidonNFCTransResult(ContantPara.NfcTransResultresult);
941
+ ```
942
+
943
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
944
+ - **Demo Activity(参考):** EmvActivityNew
945
+ - **源文档章节:** 2.17
946
+
947
+ - Source section: `2.17`
948
+
949
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
950
+
951
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
952
+
953
+
954
+
955
+ Purpose:
956
+ Returnthetransactionresulttoapplication
957
+
958
+ Result:
959
+ CheckenumNfcTransResult
960
+ ONLINE_APPROVAL,
961
+ DECLINE_ONLINE,
962
+ TERMINATE,
963
+ OFFLINE_APPROVAL,
964
+
965
+
966
+ Signature/prototype:
967
+ ```java
968
+ voidonNFCTransResult(ContantPara.NfcTransResultresult);
969
+ ```
970
+
971
+
972
+ Parameters:
973
+ OTHER_INTERFACES,
974
+ RETRY,
975
+ CARD_REMOVED,
976
+ ISSUER_SCRIPT_UPDATE_SUCCESSFUL,//8
977
+ ISSUER_SCRIPT_UPDATE_FAILED,//9
978
+ DECLINE_OFFLINE
979
+ None
980
+
981
+
982
+ Return value:
983
+ If the result is OFFLINE_APPROVAL, please call getNfcCvmCode() to
984
+ get the CVM (Cardholder Verification Method) code. Then, If the return
985
+
986
+
987
+ Usage notes:
988
+ value of the CVM code is 0x10 (indicating signature required), then
989
+ requireasignaturewhenprintingtheslip.
990
+
991
+
992
+ Source details:
993
+ ```text
994
+ Declare: voidonNFCTransResult(ContantPara.NfcTransResultresult);
995
+ Description: Returnthetransactionresulttoapplication
996
+
997
+ Result:
998
+ CheckenumNfcTransResult
999
+ ONLINE_APPROVAL,
1000
+ DECLINE_ONLINE,
1001
+ TERMINATE,
1002
+ OFFLINE_APPROVAL,
1003
+ Parameters:
1004
+ OTHER_INTERFACES,
1005
+ RETRY,
1006
+ CARD_REMOVED,
1007
+ ISSUER_SCRIPT_UPDATE_SUCCESSFUL,//8
1008
+ ISSUER_SCRIPT_UPDATE_FAILED,//9
1009
+ DECLINE_OFFLINE
1010
+ None
1011
+ Return:
1012
+ If the result is OFFLINE_APPROVAL, please call getNfcCvmCode() to
1013
+ get the CVM (Cardholder Verification Method) code. Then, If the return
1014
+ Remark:
1015
+ value of the CVM code is 0x10 (indicating signature required), then
1016
+ requireasignaturewhenprintingtheslip.
1017
+ ```
1018
+
1019
+ ## onNFCErrorInfor
1020
+
1021
+ Contactlesstransactionerrorcallbackfunction
1022
+ errID:checkenum NfcErrMessageID
1023
+ strErrInfo:
1024
+ ERR_LOAD_CALLBACK,
1025
+ ICS_PARAM_NOT_FIND,
1026
+ KERNEL_ERR,
1027
+
1028
+ ```java
1029
+ strErrInfo);
1030
+ ```
1031
+
1032
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
1033
+ - **Demo Activity(参考):** EmvActivityNew
1034
+ - **源文档章节:** 2.18
1035
+
1036
+ - Source section: `2.18`
1037
+
1038
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
1039
+
1040
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
1041
+
1042
+
1043
+
1044
+ Purpose:
1045
+ Contactlesstransactionerrorcallbackfunction
1046
+ errID:checkenum NfcErrMessageID
1047
+ strErrInfo:
1048
+ ERR_LOAD_CALLBACK,
1049
+ ICS_PARAM_NOT_FIND,
1050
+ KERNEL_ERR,
1051
+
1052
+
1053
+ Signature/prototype:
1054
+ ```java
1055
+ strErrInfo);
1056
+ ```
1057
+
1058
+
1059
+ Parameters:
1060
+ ERR_PIN_LENTH,
1061
+ ERR_MULT_CARD,
1062
+ ERR_CHECK_CARD,
1063
+ AID_PARAM_NOT_FIND,
1064
+ CAPK_PARAM_NOT_FIND,
1065
+ GET_KERNEL_DATA_FAILED,
1066
+ QPBOC_FDDA_FAILED,
1067
+ PURE_ELE_CASH_CARD_NOT_ALLOW_ONLINE_TRANS,
1068
+
1069
+
1070
+ Source details:
1071
+ ```text
1072
+ void onNFCErrorInfor (ContantPara.NfcErrMessageID errID, String
1073
+ Declare:
1074
+ strErrInfo);
1075
+ Description: Contactlesstransactionerrorcallbackfunction
1076
+ errID:checkenum NfcErrMessageID
1077
+ strErrInfo:
1078
+ ERR_LOAD_CALLBACK,
1079
+ ICS_PARAM_NOT_FIND,
1080
+ KERNEL_ERR,
1081
+ Parameters: ERR_PIN_LENTH,
1082
+ ERR_MULT_CARD,
1083
+ ERR_CHECK_CARD,
1084
+ AID_PARAM_NOT_FIND,
1085
+ CAPK_PARAM_NOT_FIND,
1086
+ GET_KERNEL_DATA_FAILED,
1087
+ QPBOC_FDDA_FAILED,
1088
+ PURE_ELE_CASH_CARD_NOT_ALLOW_ONLINE_TRANS,
1089
+ Return:
1090
+
1091
+ Remark:
1092
+ ```
1093
+
1094
+ ## onReturnNfcCardData
1095
+
1096
+ ReturncontactlesstransactionTLVdata
1097
+ Hashtable:
1098
+ "KSN" :customformatksn,usuallynotuse
1099
+
1100
+ ```java
1101
+ public void onReturnNfcCardData(Hashtable<String,String>hashtable)
1102
+ ```
1103
+
1104
+ - **类路径:** `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
1105
+ - **Demo Activity(参考):** EmvActivityNew
1106
+ - **源文档章节:** 2.19
1107
+
1108
+ - Source section: `2.19`
1109
+
1110
+ - Package/class path: `com.urovo.i9000s.api.emv.EmvNfcKernelApi` / `com.urovo.i9000s.api.emv.EmvListener`
1111
+
1112
+ - Demo reference: `UrovoPosSdkDemo/app/src/main/java/com/urovo/sdk/emv/EmvActivityNew.java`
1113
+
1114
+
1115
+
1116
+ Purpose:
1117
+ ReturncontactlesstransactionTLVdata
1118
+ Hashtable:
1119
+ "KSN" :customformatksn,usuallynotuse
1120
+
1121
+
1122
+ Signature/prototype:
1123
+ ```java
1124
+ public void onReturnNfcCardData(Hashtable<String,String>hashtable)
1125
+ ```
1126
+
1127
+
1128
+ Parameters:
1129
+ "TRACKDATA" :customformatdata,usuallynotuse
1130
+ "EMVDATA":contactlesstransactionTLVdata
1131
+ "QPBOCTYPE":ifnotsupportQPBOC,itisNULL
1132
+ If0x5A(PAN)isnotreturned,pleaseParsingtag0x57togetPAN,if0x57
1133
+
1134
+
1135
+ Usage notes:
1136
+ is not returned, please check whether it's a mstrip card. For mastercard
1137
+ mstriptheTrack2EquivalentDatawillbesaveattag0x9F6B
1138
+ 3.EMV Enum
1139
+
1140
+
1141
+ Source details:
1142
+ ```text
1143
+ Declare: public void onReturnNfcCardData(Hashtable<String,String>hashtable)
1144
+ Description: ReturncontactlesstransactionTLVdata
1145
+ Hashtable:
1146
+ "KSN" :customformatksn,usuallynotuse
1147
+ Parameters:
1148
+ "TRACKDATA" :customformatdata,usuallynotuse
1149
+ "EMVDATA":contactlesstransactionTLVdata
1150
+ "QPBOCTYPE":ifnotsupportQPBOC,itisNULL
1151
+ If0x5A(PAN)isnotreturned,pleaseParsingtag0x57togetPAN,if0x57
1152
+ Remark: is not returned, please check whether it's a mstrip card. For mastercard
1153
+ mstriptheTrack2EquivalentDatawillbesaveattag0x9F6B
1154
+ 3.EMV Enum
1155
+ ```