27 Mart 2025'ten itibaren AOSP'yi derlemek ve AOSP'ye katkıda bulunmak için aosp-main yerine android-latest-release kullanmanızı öneririz. Daha fazla bilgi için AOSP'de yapılan değişiklikler başlıklı makaleyi inceleyin.
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Android, ana makine dışında kart emülasyonu için güvenli öğeyle NFC kart emülasyonunu destekler. (Daha fazla bilgi için Ana makineye dayalı kart emülasyonuna genel bakış başlıklı makaleyi inceleyin.)
Ancak Android platformunda, Dokundur ve Öde ayarlarında belirtilen tercih edilen ödeme hizmeti her zaman güvenli öğedeki uygulamayla senkronize edilmez. Bu, tercih edilen ödeme hizmeti yerine güvenli öğede tercih edilmeyen bir ödeme hizmetinin kullanılmasının mümkün olduğu anlamına gelir.
Android 11'de barındırıcı dışında ödeme senkronizasyonu özelliği, Dokundur ve Öde'deki ödeme yapılandırmasını, temassız ön uçtaki (CLF) yönlendirme yapılandırmasını ve güvenli öğedeki uygulama tarafından seçilen durumu senkronize etmenizi sağlayan bir mekanizma sağlar.
Aşağıdaki şemada, barındırıcı dışında ödeme senkronizasyonu özelliğinin tasarım mimarisi gösterilmektedir.
Şekil 1. Ana makine dışı ödeme senkronizasyonu tasarım mimarisi
Uygulama
Ana makine dışında ödeme senkronizasyonu özelliğinin uygulanabilmesi için cihazda NCI 2.0 standardını destekleyen bir NFC denetleyicinin bulunması ve Android Open Source Project NFC ile Open Mobile Application Programming Interface (OMAPI) çerçevelerinin kullanılması gerekir.
Framework API'leri
Barındırıcı dışında ödeme senkronizasyonu uygulamak için Android Open Source Project'te bulunan aşağıdaki çerçeve API'lerini kullanın:
Barındırma dışı ödeme senkronizasyonu özelliğini uygulamanızı doğrulamak için ilgili güvenli öğelerle güvenli öğe uygulamalarını yükleyin ve ardından farklı koşullarda NFC okuyucudan uygun yanıtları alıp almadığınızı kontrol edin.
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-27 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2025-07-27 UTC."],[],[],null,["# NFC off-host payment synchronization\n\nAndroid supports NFC card emulation with a secure element for off-host card\nemulation. (For more information, see\n[Host-based card emulation overview](https://developer.android.com/guide/topics/connectivity/nfc/hce).)\nHowever, on the Android platform, the preferred payment service specified in the\nTap \\& pay setting isn't always synchronized with the app in the secure\nelement. This means it's possible that a nonpreferred payment service in the\nsecure element is used instead of the preferred payment service.\n\nIn Android 11, the *off-host payment synchronization*\nfeature provides a mechanism that lets you synchronize the payment\nconfiguration in Tap \\& pay, the routing configuration on the contactless\nfrontend (CLF), and the app-selected state in the secure element.\n\nThe following diagram illustrates the design architecture of the off-host\npayment synchronization feature.\n**Figure 1.** Off host payment synchronization design architecture\n\nImplementation\n--------------\n\nTo implement the off-host payment synchronization feature, the device must have\nan NFC controller that supports the NCI 2.0 standard and must use the Android\nOpen Source Project NFC and Open Mobile Application Programming Interface\n(OMAPI) frameworks.\n\n### Framework APIs\n\nTo implement off-host payment synchronization, use the following framework APIs\nfound in the Android Open Source Project:\n\n- [`getAidsForPreferredPaymentService()`](https://developer.android.com/reference/android/nfc/cardemulation/CardEmulation#getAidsForPreferredPaymentService()): Retrieves the registered AIDs for the preferred payment service.\n- [`getRouteDestinationForPreferredPaymentService()`](https://developer.android.com/reference/android/nfc/cardemulation/CardEmulation#getDescriptionForPreferredPaymentService()): Retrieves the route destination for the preferred payment service.\n- [`getDescriptionForPreferredPaymentService()`](https://developer.android.com/reference/android/nfc/cardemulation/CardEmulation#getRouteDestinationForPreferredPaymentService()): Returns a user-visible description of the preferred payment service.\n- [`android.permission.NFC_PREFERRED_PAYMENT_INFO`](https://developer.android.com/reference/android/Manifest.permission#NFC_PREFERRED_PAYMENT_INFO) (permission): Allows apps to receive NFC preferred payment service information.\n- [`android.nfc.action.PREFERRED_PAYMENT_CHANGED`](https://developer.android.com/sdk/api_diff/r-dp1/changes/android.nfc.NfcAdapter) (broadcast action): Intent to notify if the preferred payment service changed.\n\nValidation\n----------\n\nTo validate your implementation of the off-host payment synchronization feature,\ninstall secure element apps with corresponding secure elements and then check\nfor appropriate responses from an NFC reader in different conditions."]]