اندروید از شبیهسازی کارت خارج از میزبان پشتیبانی میکند، که به معنی شبیهسازی کارت NFC با یک عنصر امن است. برای اطلاعات بیشتر، به نمای کلی شبیهسازی کارت مبتنی بر میزبان مراجعه کنید.
در موارد استفاده خاص مانند استفاده از FeliCa برای حمل و نقل، شبیهسازی کارت خارج از میزبان زمانی مجاز است که صفحه دستگاه قفل یا خاموش باشد، یا وقتی دستگاه خاموش است.
NFC امن قابلیتی است که در اندروید ۱۰ معرفی شده و امکان شبیهسازی کارت NFC خارج از میزبان را تنها زمانی که صفحه نمایش دستگاه قفل است، فراهم میکند. پیادهسازی این ویژگی به کاربران این امکان را میدهد که NFC امن را برای بهبود امنیت فعال کنند.
پیادهسازی
برای پیادهسازی ویژگی Secure NFC، دستگاه باید یک کنترلر NFC داشته باشد که از استاندارد NCI 2.0 پشتیبانی کند و باید از چارچوب NFC پروژه متنباز اندروید (AOSP) استفاده کند. سختافزار ( ro.boot.hardware.sku ) که از ویژگی Secure NFC پشتیبانی میکند را در فایل XML منبع NFC با ویژگی config_skuSupportsSecureNfc اضافه کنید.
APIهای چارچوب
برای پیادهسازی NFC امن، APIهای چارچوب زیر را که در پروژه متنباز اندروید موجود است، پیادهسازی کنید:
-
isSecureNfcSupported(): بررسی میکند که آیا دستگاه از ویژگی Secure NFC پشتیبانی میکند یا خیر. -
isSecureNfcEnabled(): بررسی میکند که آیا ویژگی Secure NFC فعال است یا خیر. -
enableSecureNfc(boolean enable): ویژگی Secure NFC را فعال میکند.
رابط کاربری تنظیمات
در برنامه تنظیمات، یک کلید تغییر وضعیت اضافه کنید تا کاربران بتوانند ویژگی Secure NFC را فعال و غیرفعال کنند. میتوانید تنظیمات پیشفرض را در برنامه تنظیمات، فعال یا غیرفعال کنید.
شکل ۱ نمونهای از یک کلید برای فعال و غیرفعال کردن Secure NFC در برنامه تنظیمات در مسیر Settings > Connected devices > Connection preferences > NFC > Require device unlock for NFC را نشان میدهد.

شکل ۱. مثالی از کلید فعال و غیرفعال کردن NFC امن
وقتی NFC امن فعال باشد و کاربر دستگاه خود را روی یک خواننده NFC قرار دهد، اندروید اعلان «باز کردن قفل برای استفاده از NFC» را روی صفحه قفل نمایش میدهد، همانطور که در شکل 2 نشان داده شده است.

شکل ۲. برای استفاده از اعلان NFC در صفحه قفل، قفل را باز کنید
اعتبارسنجی
برای اعتبارسنجی پیادهسازی خود، ویژگی Secure NFC را فعال کنید و تأیید کنید که شبیهسازی کارت NFC هنگام خاموش یا قفل بودن صفحه دستگاه و همچنین هنگام خاموش بودن دستگاه غیرفعال باشد.