Android, ana makine dışında kart emülasyonunu destekler. Bu, güvenli öğeyle NFC kart emülasyonu anlamına gelir. Daha fazla bilgi için Ana makineye dayalı kart emülasyonuna genel bakış başlıklı makaleyi inceleyin.
Toplu taşıma için FeliCa kullanımı gibi belirli kullanım alanlarında, cihazın ekranı kilitli veya kapalıyken ya da cihaz kapalıyken ana makine dışında kart taklit etmeye izin verilir.
Güvenli NFC, Android 10'da kullanıma sunulan ve ana makine dışı NFC kart emülasyonunun yalnızca cihaz ekranının kilidi açıkken etkinleştirilmesine olanak tanıyan bir özelliktir. Bu özelliğin uygulanması, kullanıcılara daha iyi güvenlik için Güvenli NFC'yi etkinleştirme seçeneği sunar.
Uygulama
Güvenli NFC özelliğinin uygulanabilmesi için cihazda NCI 2.0 standardını destekleyen bir NFC denetleyicisi ve Android Open Source Project (AOSP) NFC çerçevesi bulunmalıdır. config_skuSupportsSecureNfc
özelliğiyle NFC kaynak XML dosyasında Güvenli NFC özelliğini destekleyen donanımı (ro.boot.hardware.sku
) ekleyin.
Framework API'leri
Güvenli NFC'yi uygulamak için Android Open Source Project'te bulunan aşağıdaki çerçeve API'lerini uygulayın:
isSecureNfcSupported()
: Cihazın Güvenli NFC özelliğini destekleyip desteklemediğini kontrol eder.isSecureNfcEnabled()
: Güvenli NFC özelliğinin etkin olup olmadığını kontrol eder.enableSecureNfc(boolean enable)
: Güvenli NFC özelliğini etkinleştirir.
Ayarlar kullanıcı arayüzü
Ayarlar uygulamasına, kullanıcıların Güvenli NFC özelliğini etkinleştirmesine ve devre dışı bırakmasına olanak tanıyan bir açma/kapatma düğmesi ekleyin. Varsayılan ayarı Ayarlar uygulamasında etkin veya devre dışı olacak şekilde özelleştirebilirsiniz.
Şekil 1'de, Ayarlar uygulamasında Ayarlar > Bağlı cihazlar > Bağlantı tercihleri > NFC > NFC için cihazın kilidinin açılmasını zorunlu kıl bölümünde Güvenli NFC'yi etkinleştirmek ve devre dışı bırakmak için kullanılan açma/kapatma düğmesi örneği gösterilmektedir.
Şekil 1. Güvenli NFC'yi etkinleştirmek ve devre dışı bırakmak için kullanılan örnek açma/kapatma anahtarı
Güvenli NFC etkinleştirildiğinde ve kullanıcı cihazı bir NFC okuyucuya yerleştirdiğinde Android, Şekil 2'de gösterildiği gibi kilit ekranında NFC'yi kullanmak için kilidi aç bildirimini gösterir.
Şekil 2. Kilit ekranında NFC'yi kullanmak için kilidi açın bildirimi
Doğrulama
Uygulamanızı doğrulamak için Güvenli NFC özelliğini etkinleştirin ve cihazın ekranı kapalı veya kilitliyken ve cihaz kapalıyken NFC kart emülasyonunun devre dışı olduğunu doğrulayın.