การซิงค์ข้อมูลการชำระเงินนอกโฮสต์ของ NFC

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

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

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

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

การใช้งาน

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

Framework API

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

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

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

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