اندروید از شبیه سازی کارت NFC با یک عنصر امن برای شبیه سازی کارت خارج از میزبان پشتیبانی می کند. (برای اطلاعات بیشتر، به نمای کلی شبیهسازی کارت مبتنی بر میزبان مراجعه کنید.) با این حال، در پلتفرم Android، سرویس پرداخت ترجیحی مشخصشده در تنظیمات Tap & Pay همیشه با برنامه در عنصر امن همگامسازی نمیشود. این به این معنی است که ممکن است به جای سرویس پرداخت ترجیحی از یک سرویس پرداخت غیر ترجیحی در عنصر امن استفاده شود.
در اندروید 11، ویژگی همگامسازی پرداخت خارج از میزبان مکانیزمی را ارائه میکند که به شما امکان میدهد پیکربندی پرداخت را در Tap & pay، پیکربندی مسیریابی در قسمت جلویی بدون تماس (CLF) و حالت انتخاب شده توسط برنامه را در عنصر امن همگامسازی کنید.
نمودار زیر معماری طراحی ویژگی همگام سازی پرداخت خارج از میزبان را نشان می دهد.
پیاده سازی
برای پیادهسازی ویژگی همگامسازی پرداخت خارج از میزبان، دستگاه باید دارای یک کنترلکننده NFC باشد که از استاندارد NCI 2.0 پشتیبانی میکند و باید از چارچوبهای پروژه منبع باز Android NFC و رابط برنامهنویسی برنامه موبایل باز (OMAPI) استفاده کند.
APIهای چارچوب
برای پیادهسازی همگامسازی پرداخت خارج از میزبان، از APIهای چارچوب زیر موجود در پروژه منبع باز Android استفاده کنید:
-
getAidsForPreferredPaymentService()
: AID های ثبت شده را برای سرویس پرداخت ترجیحی بازیابی می کند. -
getRouteDestinationForPreferredPaymentService()
: مقصد مسیر را برای سرویس پرداخت ترجیحی بازیابی می کند. -
getDescriptionForPreferredPaymentService()
: یک توضیح قابل مشاهده برای کاربر از سرویس پرداخت ترجیحی را برمی گرداند. -
android.permission.NFC_PREFERRED_PAYMENT_INFO
(مجوز): به برنامه ها اجازه می دهد اطلاعات سرویس پرداخت ترجیحی NFC را دریافت کنند. -
android.nfc.action.PREFERRED_PAYMENT_CHANGED
(اقدام پخش): قصد اطلاع در صورت تغییر سرویس پرداخت ترجیحی.
اعتبار سنجی
برای تأیید اجرای ویژگی همگامسازی پرداخت خارج از میزبان، برنامههای عنصر امن را با عناصر امن مربوطه نصب کنید و سپس پاسخهای مناسب را از یک خواننده NFC در شرایط مختلف بررسی کنید.