การซิงค์การชำระเงินแบบออฟโฮสต์ผ่าน NFC

Android รองรับการจำลองบัตร NFC ด้วยองค์ประกอบที่ปลอดภัยสำหรับการจำลองบัตรนอกโฮสต์ (ดูข้อมูลเพิ่มเติมได้ที่ภาพรวมโปรแกรมจำลองการ์ดแบบโฮสต์) อย่างไรก็ตาม ในแพลตฟอร์ม Android บริการชำระเงินที่ต้องการซึ่งระบุในการ ตั้งค่าแตะและจ่ายอาจไม่ได้ซิงค์กับแอปในองค์ประกอบที่ปลอดภัยเสมอไป ซึ่งหมายความว่าระบบอาจใช้บริการชำระเงินที่ไม่ต้องการใน องค์ประกอบที่ปลอดภัยแทนบริการชำระเงินที่ต้องการ

ใน Android 11 ฟีเจอร์การซิงค์การชำระเงินนอกโฮสต์ มีกลไกที่ช่วยให้คุณซิงค์การกำหนดค่าการชำระเงิน ในการแตะและจ่าย การกำหนดค่าการกำหนดเส้นทางในส่วนหน้าแบบไม่ต้องสัมผัส (CLF) และสถานะที่แอปเลือกในองค์ประกอบที่ปลอดภัยได้

แผนภาพต่อไปนี้แสดงสถาปัตยกรรมการออกแบบของฟีเจอร์การซิงค์การชำระเงินนอกโฮสต์

สถาปัตยกรรมการออกแบบการซิงค์การชำระเงินนอกโฮสต์
รูปที่ 1 การซิงโครไนซ์การชำระเงินนอกโฮสต์ สถาปัตยกรรมการออกแบบ

การใช้งาน

หากต้องการใช้ฟีเจอร์การซิงค์การชำระเงินนอกโฮสต์ อุปกรณ์ต้องมี ตัวควบคุม NFC ที่รองรับมาตรฐาน NCI 2.0 และต้องใช้เฟรมเวิร์ก NFC ของ Android Open Source Project รวมถึง Open Mobile Application Programming Interface (OMAPI)

Framework API

หากต้องการใช้การซิงค์การชำระเงินนอกโฮสต์ ให้ใช้ API ของเฟรมเวิร์กต่อไปนี้ ที่อยู่ในโปรเจ็กต์ Android Open Source

  • getAidsForPreferredPaymentService(): เรียกข้อมูล AID ที่ลงทะเบียนสำหรับบริการชำระเงินที่ต้องการ
  • getRouteDestinationForPreferredPaymentService(): เรียกข้อมูลปลายทางของเส้นทางสำหรับบริการชำระเงินที่ต้องการ
  • getDescriptionForPreferredPaymentService(): แสดงคำอธิบายที่ผู้ใช้มองเห็นได้ของบริการชำระเงินที่ต้องการ
  • android.permission.NFC_PREFERRED_PAYMENT_INFO (สิทธิ์): อนุญาตให้แอปรับข้อมูลบริการชำระเงิน NFC ที่ต้องการ
  • android.nfc.action.PREFERRED_PAYMENT_CHANGED (การดำเนินการออกอากาศ): ความตั้งใจที่จะแจ้งเตือนหากบริการชำระเงินที่ต้องการ มีการเปลี่ยนแปลง

การตรวจสอบความถูกต้อง

หากต้องการตรวจสอบการติดตั้งใช้งานฟีเจอร์การซิงค์การชำระเงินนอกโฮสต์ ให้ติดตั้งแอป Secure Element ที่มี Secure Element ที่เกี่ยวข้อง แล้วตรวจสอบ การตอบกลับที่เหมาะสมจากเครื่องอ่าน NFC ในสภาวะต่างๆ