Android SDK API
คลาสยูทิลิตี้สนับสนุนภายนอก
เมธอด
getClient(Context)
เรียกคืนออบเจ็กต์คลาสยูทิลิตี้ GTCaptcha4Client
การประกาศ
public static GTCaptcha4Client getClient(Context context)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| context | Context | ออบเจ็กต์ Context |
การอภิปราย
หมายเหตุ: นี่ไม่ใช่การใช้งานแบบ singleton ออบเจ็กต์ GTCaptcha4Client ที่ได้รับผ่าน getClient() จำเป็นต้องบันทึกไว้สำหรับการใช้งานใน onDestroy หรือเมธอดวงจรชีวิตอื่นๆ
init(String)
เริ่มต้นด้วยการกำหนดค่าดีฟอลต์
การประกาศ
public GTCaptcha4Client init(String captchaId)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| captchaId | String | captchaId ที่สมัครจาก backend |
การอภิปราย
หมายเหตุ: การเรียกเมธอด init() จะเริ่มกระบวนการโหลด captcha ทันที หากเรียกก่อนวงจรชีวิต onResume() captcha จะถูกโหลดล่วงหน้า เมื่อ verifyWithCaptcha() ถูกเรียกเพื่อแสดง captcha จะโหลดและแสดงผลได้อย่างรวดเร็ว เช่นเดียวกันกับด้านล่าง
init(String, GTCaptcha4Config)
เริ่มต้นด้วยการกำหนดค่าแบบกำหนดเอง
การประกาศ
public GTCaptcha4Client init(String captchaId, GTCaptcha4Config config)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| captchaId | String | captchaId ที่สมัครจาก backend |
| config | GTCaptcha4Config | ออบเจ็กต์การกำหนดค่า |
addOnSuccessListener(GTCaptcha4Client.OnSuccessListener)
เพิ่ม listener สำหรับผลการตรวจสอบ ซึ่งจะถูกเรียกกลับเมื่อ captcha โหลดสำเร็จและผู้ใช้แก้ captcha ได้
การประกาศ
public GTCaptcha4Client addOnSuccessListener(GTCaptcha4Client.OnSuccessListener response)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| response | GTCaptcha4Client.OnSuccessListener | Listener ผลการตรวจสอบ |
addOnFailureListener(GTCaptcha4Client.OnFailureListener)
เพิ่ม listener สำหรับการโหลด captcha ล้มเหลว ซึ่งจะถูกเรียกเมื่อเกิดข้อผิดพลาดระหว่างกระบวนการโหลด captcha
การประกาศ
public GTCaptcha4Client addOnFailureListener(GTCaptcha4Client.OnFailureListener listener)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| listener | GTCaptcha4Client.OnFailureListener | Listener สำหรับการโหลด captcha ล้มเหลว |
addOnWebViewShowListener(GTCaptcha4Client.OnWebViewShowListener)
เพิ่ม listener สำหรับการโหลดการตรวจสอบ frontend สำเร็จ เมื่อการตรวจสอบ frontend โหลดสำเร็จ callback จะถูกเรียก หากการโหลดล่วงหน้าเสร็จสิ้น callback จะถูกเรียกทันทีหลังจากเรียก verifyWithCaptcha
การประกาศ
public GTCaptcha4Client addOnWebViewShowListener(GTCaptcha4Client.OnWebViewShowListener listener)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| listener | GTCaptcha4Client.OnWebViewShowListener | Listener สำหรับการโหลดการตรวจสอบ frontend สำเร็จ |
verifyWithCaptcha()
เริ่มกระบวนการตรวจสอบและโหลด captcha
การประกาศ
public GTCaptcha4Client verifyWithCaptcha()
การอภิปราย
หมายเหตุ: ก่อนเรียก verifyWithCaptcha() จำเป็นต้องเรียก init(), addOnSuccessListener() และ addOnFailureListener() มิฉะนั้นอาจเกิดข้อผิดพลาด
cancel()
ยกเลิกการตรวจสอบและปิดหน้าต่างการตรวจสอบ
การประกาศ
public void cancel()
การอภิปราย
หมายเหตุ: ก่อนเรียก cancel() จำเป็นต้องเรียก init(), addOnSuccessListener() และ addOnFailureListener() มิฉะนั้นอาจเกิดข้อผิดพลาด
setLogEnable(boolean enable)
เปิดหรือปิดการตรวจสอบ log
การประกาศ
public void setLogEnable(boolean enable)
การอภิปราย
การเรียก setLogEnable ควบคุมฟังก์ชันการพิมพ์ log
destroy()
ทำลายทรัพยากรที่มีวงจรชีวิตยาวนาน
การประกาศ
public void destroy()
การอภิปราย
ทำลายทรัพยากรการตรวจสอบ เมธอดนี้ต้องถูกเรียก
การอภิปราย
เมธอดนี้ควรถูกเรียกในระหว่างวงจรชีวิต onDestroy ของอินเทอร์เฟซ captcha ที่ใช้โดย client
configurationChanged(Configuration)
จัดการการเปลี่ยนแปลงการหมุนหน้าจอ
การประกาศ
public void configurationChanged(Configuration newConfig)
การอภิปราย
เมธอดนี้ควรถูกเรียกในระหว่างเมธอดวงจรชีวิต onConfigurationChanged สำหรับการเปลี่ยนแปลงการหมุนหน้าจอ
getVersion()
เรียกคืนหมายเลขเวอร์ชัน
การประกาศ
public static String getVersion()
ค่าที่ส่งคืน
ส่งคืนหมายเลขเวอร์ชันเป็น String
isSupportWebView(Context)
ตรวจสอบว่าระบบรองรับ WebView หรือไม่ หากไม่รองรับ แนะนำให้ใช้ fallback logic
การประกาศ
public static Pair<Boolean, String> isSupportWebView(Context context)
ค่าที่ส่งคืน
คำอธิบายของออบเจ็กต์ Pair:
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| first | Boolean | ระบบรองรับ WebView หรือไม่ หากไม่รองรับ สามารถใช้ fallback logic ได้ |
| second | String | คำอธิบายข้อผิดพลาดสำหรับการโหลดออบเจ็กต์ WebView |
GTCaptcha4Config#Builder
คลาสการกำหนดค่าพารามิเตอร์
setTimeOut(int)
ตั้งค่าระยะเวลาการหมดเวลา request
การประกาศ
public Builder setTimeOut(int timeOut)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| timeOut | int | หน่วย: ms, ดีฟอลต์คือ 10000 |
setResourcePath(String)
ตั้งค่าเส้นทางทรัพยากรสำหรับการโหลด WebView
การประกาศ
public Builder setResourcePath(String html)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| html | String | ที่อยู่สำหรับการโหลด WebView |
การอภิปราย
โดยดีฟอลต์จะโหลดไฟล์ gt4-index*.html ในไดเรกทอรี assets อินเทอร์เฟซนี้ไม่จำเป็นต้องตั้งค่ายกเว้นมีข้อกำหนดพิเศษ
setLanguage(String)
ตั้งค่าภาษาสำหรับการส่ง JS อินเทอร์เฟซนี้สามารถควบคุมได้เฉพาะภาษาของ WebView ที่โหลด ในขณะที่ภาษาของ SDK จะตามภาษาของแอปพลิเคชันปัจจุบัน
การประกาศ
public Builder setLanguage(String language)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| language | String | รหัสย่อสำหรับภาษาด้านหน้า ดูรายละเอียดในเอกสารด้านหน้า |
การอภิปราย
หากตั้งค่าเป็น null หรือไม่ได้ตั้งค่า รหัสย่อภาษาดีฟอลต์ของแอปพลิเคชันจะถูกส่งไปยัง frontend
setCanceledOnTouchOutside(boolean)
ตั้งค่าว่าการคลิกพื้นที่สีเทาจะปิด dialog หรือไม่ ดีฟอลต์คือปิด
การประกาศ
public Builder setCanceledOnTouchOutside(boolean canceledOnTouchOutside)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| canceledOnTouchOutside | boolean | true เพื่อปิด |
setDebug(boolean)
ตั้งค่าว่าอยู่ในโหมด debug หรือไม่ สำหรับการผลิตต้องตั้งค่าเป็น false หรือไม่ตั้งค่า
การประกาศ
public Builder setDebug(boolean debug)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| debug | boolean | true สำหรับ debug, ดีฟอลต์คือ false |
setBackgroundColor(int)
ตั้งค่าสีพื้นหลังของ WebView ซึ่งควบคุมสีพื้นหลังของคอมโพเนนต์ Android WebView และแตกต่างจากสีพื้นหลังของ JS ฝั่งหน้า
การประกาศ
public Builder setBackgroundColor(int backgroundColor)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| backgroundColor | int | ที่อยู่ทรัพยากรสีหรือค่าที่คืนจาก Color.parseColor() |
setDialogStyle(String)
ตั้งค่ารูปแบบธีมของกล่องโต้ตอบการยืนยัน
การประกาศ
public Builder setDialogStyle(String dialogStyle)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| dialogStyle | String | ชื่อของรูปแบบธีมกล่องโต้ตอบ |
การประกาศ
ต่อไปนี้คือตัวอย่างรูปแบบธีมเริ่มต้น:
<style name="gt4_captcha_dialog_style" parent="android:Theme.Dialog">
<!-- ไม่มีกรอบหน้าต่างสำหรับ Dialog -->
<item name="android:windowFrame">@null</item>
<!-- ลอยอยู่เหนือกิจกรรมหรือไม่ -->
<item name="android:windowIsFloating">true</item>
<!-- โปร่งแสงหรือไม่ -->
<item name="android:windowIsTranslucent">true</item>
<!-- ลบชื่อเรื่อง -->
<item name="android:windowNoTitle">true</item>
<item name="android:windowContentOverlay">@null</item>
<!-- ใช้พื้นหลังโปร่งแสงสีดำภายนอกพื้นที่แสดงหรือไม่ -->
<item name="android:backgroundDimEnabled">true</item>
<!-- ตั้งค่าพื้นหลังของกล่องโต้ตอบ -->
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:padding">0dp</item>
</style>
setDialogShowListener(GTCaptcha4Client.OnDialogShowListener)
ตั้งค่าการเรียกกลับของผู้ฟังเมื่อหน้าต่างการยืนยันแสดงผล
การประกาศ
public void setDialogShowListener(GTCaptcha4Client.OnDialogShowListener dialogShowListener)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| dialogShowListener | GTCaptcha4Client.OnDialogShowListener | วัตถุผู้ฟังสำหรับการแสดงหน้าต่างการยืนยัน |
setParams(Map<String, Object>)
กำหนดค่าพารามิเตอร์เพิ่มเติม ซึ่งจะถูกส่งไปยัง JS ทั้งหมด
การประกาศ
public Builder setParams(Map<String, Object> params)
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
| params | JSONObject | พารามิเตอร์การกำหนดค่าเพิ่มเติม |
การอภิปราย
คู่คีย์-ค่า ที่รองรับมีดังนี้:
| คีย์ | ประเภทค่า | คำอธิบาย | ค่าเริ่มต้น |
|---|---|---|---|
| displayMode | int | รูปแบบธีม, 0: ตามระบบ, 1: ปกติ, 2: โหมดมืด | 0 |
| protocol | String | ส่วนหัวโปรโตคอล, รองรับ "https:// หรือ http:// |
https:// |
| bgColor | String | สีพื้นหลังหน้ากากการยืนยัน, ตามกฎ CSS, โปรดสังเกตสองหลักสุดท้ายสำหรับความโปร่งใส | #00000000 |
| loading | String | การโหลดแบบกำหนดเอง, เส้นทางสัมพัทธ์ของทรัพยากรการโหลดสำหรับ WebView โหลด HTML, สตริงว่างหมายถึงไม่มีผลการโหลด | "/gt4-loading.gif" |
| rem | float | ตั้งค่าอัตราส่วนการปรับขนาดโดยรวมของรหัสยืนยัน | 1 |
| hideBar | JSONArray | ซ่อนปุ่มปิดและปุ่มรีเฟรชบนหน้าจอการยืนยันถัดไป | N/A |
| nextWidth | String | ความกว้างของหน้าต่างป๊อปอัปรหัสยืนยัน, ต้องรวมหน่วย, เช่น "300px" | N/A |
| riskType | String | ระบุรูปแบบการยืนยันร่วมกับการควบคุมความเสี่ยง | N/A |
| hideSuccess | boolean | ซ่อนป๊อปอัปความสำเร็จของการยืนยัน | FALSE |
ตัวอย่างโค้ด
Map<String, Object> params = new HashMap<>();
params.put("displayMode", 0);
params.put("protocol", "https://");
params.put("bgColor", "#CC0000FF");
params.put("loading", "./loading_test.gif");
params.put("rem", 0.6);
JSONArray hideBar = new JSONArray()
.put("close")
.put("refresh");
params.put("hideBar", hideBar);
params.put("nextWidth", "300px");
params.put("hideSuccess", true);
GTCaptcha4Config.Builder builder = new GTCaptcha4Config.Builder()
.setParams(params);
build()
สร้างวัตถุ GTCaptcha4Config เพื่อใช้กับอินเทอร์เฟซ init()
การประกาศ
public GTCaptcha4Config build()
GTCaptcha4Client#OnSuccessListener
ผู้ฟังการเรียกกลับสำหรับผลลัพธ์การยืนยัน
onSuccess(Boolean, String)
การเรียกกลับอินเทอร์เฟซการยืนยัน
การประกาศ
void onSuccess(Boolean status, String response)
พารามิเตอร์
พารามิเตอร์ |ประเภท | คำอธิบาย
------ |-----|-----
status |Boolean | ผลลัพธ์การยืนยันการดำเนินการของผู้ใช้, true สำหรับสำเร็จ, false สำหรับล้มเหลว. การล้มเหลวจะรีเฟรชรูปแบบการยืนยัน.
response | String | เมื่อการยืนยันการดำเนินการของผู้ใช้สำเร็จ, ข้อมูล response ต้องถูกส่งไปยังเซิร์ฟเวอร์เพื่อการยืนยัน.
การอภิปราย
คำอธิบายของการยืนยันสำเร็จ:
{"lot_number":"b150e61198924eff9eaae121e9b67aa8","pass_token":"6fcfba4c35cb57b873c99c5b3b02089c58a26244c18f7706aaa1e87aed3aa8f4","gen_time":"1622020720","captcha_output":"Tu6rW0dRNO0NLxMKftwdH00G5whF5HHddthoXSEA1G4="}
คำอธิบายของการยืนยันล้มเหลว:
{"captchaId":"647f5ed2ed8acb4be36784e01556bb71","captchaType":"slide","challenge":"95ed53b4-95c6-4c6b-9aac-769b29ef74a0"}
GTCaptcha4Client#OnFailureListener
ผู้ฟังการเรียกกลับสำหรับการโหลดล้มเหลว
onFailure(String)
การเรียกกลับสำหรับการโหลดล้มเหลว
การประกาศ
void onFailure(String error)
พารามิเตอร์
พารามิเตอร์ |ประเภท | คำอธิบาย ------ |-----|----- error | String | คำอธิบายของการโหลดการยืนยันล้มเหลว. หมายเหตุ: รวมถึงการยกเลิกที่ผู้ใช้เริ่มต้น.
การอภิปราย
คำอธิบายของการโหลดล้มเหลว:
{"code":"-14460","msg":"Verification session has been canceled","desc":{"description":"User cancelled 'Captcha'"}}
GTCaptcha4Client#OnWebViewShowListener
ผู้ฟังการเรียกกลับสำหรับการโหลดการยืนยันฝั่งหน้าสำเร็จ
onWebViewShow()
การโหลดการยืนยันฝั่งหน้าสำเร็จ
การประกาศ
void onWebViewShow()
การอภิปราย
การเรียกกลับหลังจากการโหลดการยืนยันฝั่งหน้าสำเร็จ. หากการโหลดล่วงหน้าเสร็จสิ้น, การเรียกกลับนี้จะถูกเรียกทันทีหลังจากเรียก verifyWithCaptcha.
GTCaptcha4Client#OnDialogShowListener
ผู้ฟังการเรียกกลับสำหรับการแสดงหน้าต่างการยืนยัน
actionBeforeDialogShow(Dialog)
การเรียกกลับก่อนที่หน้าต่างการยืนยันจะแสดงผล
การประกาศ
void actionBeforeDialogShow(Dialog dialog)
พารามิเตอร์
พารามิเตอร์ |ประเภท | คำอธิบาย ------ |-----|----- dialog | Dialog | อินสแตนซ์ของหน้าต่างการยืนยัน.
actionAfterDialogShow()
การเรียกกลับหลังจากที่หน้าต่างการยืนยันแสดงผล
การประกาศ
void actionAfterDialogShow(Dialog dialog)
พารามิเตอร์
พารามิเตอร์ |ประเภท | คำอธิบาย ------ |-----|----- dialog | Dialog | อินสแตนซ์ของหน้าต่างการยืนยัน.
การอภิปราย
คุณสามารถเปลี่ยนรูปแบบระบบได้ที่นี่ เช่น ซ่อนแถบนำทาง, ซ่อนแถบสถานะ เป็นต้น.
onDialogFocusChanged()
การเรียกกลับเมื่อโฟกัสของหน้าต่างการยืนยันเปลี่ยนแปลง
การประกาศ
void onDialogFocusChanged(Dialog dialog, boolean hasFocus)
พารามิเตอร์
พารามิเตอร์ |ประเภท | คำอธิบาย ------ |-----|----- dialog |Dialog | อินสแตนซ์ของหน้าต่างการยืนยัน. hasFocus | boolean | มีโฟกัสหรือไม่.









