OffHostApduService 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
OffHostApduService 是一個方便 Service
的類別,可以擴充來描述位於非主機的一或多個 NFC 應用程式,例如內嵌的安全元素或 UICC。
[Android.Runtime.Register("android/nfc/cardemulation/OffHostApduService", DoNotGenerateAcw=true)]
public abstract class OffHostApduService : Android.App.Service
[<Android.Runtime.Register("android/nfc/cardemulation/OffHostApduService", DoNotGenerateAcw=true)>]
type OffHostApduService = class
inherit Service
- 繼承
- 屬性
備註
OffHostApduService 是一個方便 Service
的類別,可以擴充來描述位於非主機的一或多個 NFC 應用程式,例如內嵌的安全元素或 UICC。
<div class=“special reference”><h3>Developer Guide</h3> 如需卡片模擬主題的一般簡介,請閱讀 NFC 卡模擬開發人員指南。
</div>
<h3>NFC 通訊協定</h3>
此類別所代表的離主機應用程式是以 NFC-Forum ISO-DEP 通訊協定(以 ISO/IEC 14443-4 為基礎)為基礎,並支援 ISO/IEC 7816-4 規格中所定義的處理命令應用程式通訊協定數據單位(APTU)。
<h3>服務選取專案</h3>
當遠端 NFC 裝置想要與非主機 NFC 應用程式通訊時,它會傳送 ISO/IEC 7816-4 規格中所定義的所謂“SELECT AID” APDU。 AID 是 ISO/IEC 7816-4 中定義的應用程式識別碼。
AID 的註冊程式定義於 ISO/IEC 7816-5 規格中。 如果您不想註冊 AID,您可以在專屬範圍中使用 AID:第一個字節的位 8-5 必須分別設定為 '1'。 例如,“0xF00102030405”是專屬的 AID。 如果您使用專屬的 AID,建議您選擇至少 6 個字節的 AID,以減少與其他可能使用專屬 AID 的應用程式發生衝突的風險。
<h3>AID 群組</h3>
在某些情況下,非主機環境可能需要註冊多個AID來實作特定應用程式,而且它必須確定它是所有這些AID的默認處理程式(而不是群組中的某些 AID 移至另一個服務)。
AID 群組是一份 AID 清單,應該視為操作系統一起歸屬。 對於 AID 群組中的所有 AID,OS 將保證下列其中一項:<ul><li>群組中的所有 AID 都會路由傳送至群組中的離線執行環境 li>群組中沒有 AID 會路由傳送至 off-host 執行環境 <</ul>,換句話說,群組中的某些 AID 可以路由傳送至此異主機執行環境, 以及另一個或主機型 HostApduService
的 。 <h3>AID 群組和類別</h3>
每個 AID 群組都可以與類別相關聯。 這可讓 Android OS 分類服務,並可讓使用者在類別層級設定預設值,而不是 AID 層級。
您可以使用 CardEmulation#isDefaultServiceForCategory(android.content.ComponentName, String)
來判斷您的離主機服務是否為類別的預設處理程式。
在此版本的平臺中,唯一已知的類別是 CardEmulation#CATEGORY_PAYMENT
和 CardEmulation#CATEGORY_OTHER
。 沒有類別的 AID 群組,或具有目前平臺版本無法辨識的類別,會自動分組到類別中 CardEmulation#CATEGORY_OTHER
。
<h3>服務 AID 註冊</h3>
若要告訴平臺哪些 AID 位於主機外,並由此服務管理, #SERVICE_META_DATA
必須在服務的宣告中包含專案。 OffHostApduService 指令清單宣告的范例如下所示:
<service android:name=".MyOffHostApduService" android:exported="true" android:permission="android.permission.BIND_NFC_SERVICE">
<intent-filter>
<action android:name="android.nfc.cardemulation.action.OFF_HOST_APDU_SERVICE"/>
</intent-filter>
<meta-data android:name="android.nfc.cardemulation.off_host_apdu_ervice" android:resource="@xml/apduservice"/>
</service>
此元數據標籤指向apduservice.xml檔案。 具有單一 AID 群組宣告的這個檔案範例如下所示:
<offhost-apdu-service xmlns:android="http://schemas.android.com/apk/res/android"
android:description="@string/servicedesc">
<aid-group android:description="@string/subscription" android:category="other">
<aid-filter android:name="F0010203040506"/>
<aid-filter android:name="F0394148148100"/>
</aid-group>
</offhost-apdu-service>
android.R.styleable#OffHostApduService <offhost-apdu-service>
必須包含android.R.styleable#OffHostApduService_description <android:description>
屬性,其中包含UI中可能會顯示之服務的使用者易記描述。
android.R.styleable#OffHostApduService <offhost-apdu-service>
必須包含一或多個android.R.styleable#AidGroup <aid-group>
標籤。 每個 android.R.styleable#AidGroup <aid-group>
都必須包含一或多個 android.R.styleable#AidFilter <aid-filter>
標籤,每個標籤都包含單一 AID。 AID 必須以十六進位格式指定,並包含偶數個字元。
此註冊將允許將服務納入為類別的默認處理程序選項。 Android OS 會負責正確將 AID 路由傳送至主機外執行環境,根據使用者選取哪個服務成為特定類別的處理程式。
此服務可能會定義 Android 命名空間以外的其他動作,以提供與主機外執行環境的進一步互動。
<p class=“note”>使用此類別需要 PackageManager#FEATURE_NFC_HOST_CARD_EMULATION
存在於裝置上。
的 android.nfc.cardemulation.OffHostApduService
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
建構函式
OffHostApduService() | |
OffHostApduService(IntPtr, JniHandleOwnership) |
建立 JNI 物件的 Managed 表示法時使用的建構函式;由運行時間呼叫。 |
欄位
AccessibilityService |
使用 搭配 |
AccountService |
使用 搭配 |
ActivityService |
使用 來 |
AlarmService |
使用 搭配 |
AppOpsService |
使用搭配 |
AppSearchService |
使用 搭配 |
AppwidgetService |
使用 搭配 |
AudioService |
使用 搭配 |
BatteryService |
使用搭配 |
BindAllowActivityStarts |
已淘汰.
|
BindExternalServiceLong |
的運作方式與 |
BindNotPerceptible |
已淘汰.
旗標: |
BindSharedIsolatedProcess |
已淘汰.
旗標: |
BiometricService |
使用 來 |
BlobStoreService |
使用 搭配 |
BluetoothService |
使用 搭配 |
BugreportService |
擷取 Bugreport 的服務。 (繼承來源 Context) |
CameraService |
使用 來 |
CaptioningService |
使用 搭配 |
CarrierConfigService |
使用 搭配 |
ClipboardService |
使用搭配 |
CompanionDeviceService |
使用搭配 |
ConnectivityDiagnosticsService |
使用 搭配 |
ConnectivityService |
使用搭配 |
ConsumerIrService |
使用 搭配 |
CredentialService |
使用搭配 |
CrossProfileAppsService |
使用 搭配 |
DeviceIdDefault |
默認裝置識別碼,這是主要(非虛擬)裝置的標識碼。 (繼承來源 Context) |
DeviceIdInvalid |
無效的裝置識別碼。 (繼承來源 Context) |
DeviceLockService |
使用 搭配 |
DevicePolicyService |
使用 搭配 |
DisplayHashService |
使用搭配 |
DisplayService |
使用 來 |
DomainVerificationService |
使用搭配 |
DownloadService |
使用 搭配 |
DropboxService |
使用搭配 |
EuiccService |
使用搭配 |
FileIntegrityService |
使用 搭配 |
FingerprintService |
使用搭配 |
GameService |
使用 搭配 |
GrammaticalInflectionService |
使用 搭配 |
HardwarePropertiesService |
使用搭配 |
HealthconnectService |
使用 搭配 |
InputMethodService |
使用搭配 |
InputService |
使用 來 |
IpsecService |
使用 搭配 |
JobSchedulerService |
使用 搭配 |
KeyguardService |
使用 搭配 |
LauncherAppsService |
使用 搭配 |
LayoutInflaterService |
使用 搭配 |
LocaleService |
使用 搭配 |
LocationService |
使用 搭配 |
MediaCommunicationService |
使用搭配 |
MediaMetricsService |
使用 來 |
MediaProjectionService |
使用 搭配 |
MediaRouterService |
使用 搭配 |
MediaSessionService |
使用搭配 |
MidiService |
使用 搭配 |
NetworkStatsService |
使用搭配 |
NfcService |
使用 搭配 |
NotificationService |
使用 搭配 |
NsdService |
使用搭配 |
OverlayService |
使用 搭配 |
PeopleService |
使用 來 |
PerformanceHintService |
使用 搭配 |
PowerService |
使用 搭配 |
PrintService |
|
ReceiverExported |
已淘汰.
旗標 |
ReceiverNotExported |
已淘汰.
旗標: |
ReceiverVisibleToInstantApps |
已淘汰.
旗標: |
RestrictionsService |
使用 搭配 |
RoleService |
使用搭配 |
SearchService |
使用 搭配 |
SensorService |
使用 搭配 |
ServiceInterface |
|
ServiceMetaData |
包含此服務詳細資訊的元數據項目名稱。 |
ShortcutService |
使用搭配 |
StatusBarService |
使用 來 |
StopForegroundDetach |
已淘汰.
選取器 |
StopForegroundLegacy |
的 |
StopForegroundRemove |
已淘汰.
的 |
StorageService |
使用搭配 |
StorageStatsService |
使用搭配 |
SystemHealthService |
使用 搭配 |
TelecomService |
使用搭配 |
TelephonyImsService |
使用 搭配 |
TelephonyService |
使用 搭配 |
TelephonySubscriptionService |
使用 搭配 |
TextClassificationService |
使用 搭配 |
TextServicesManagerService |
使用搭配 |
TvInputService |
使用 來 |
TvInteractiveAppService |
使用 搭配 |
UiModeService |
使用 搭配 |
UsageStatsService |
使用搭配 |
UsbService |
使用 搭配 |
UserService |
使用 搭配 |
VibratorManagerService |
使用 搭配 |
VibratorService |
使用 搭配 |
VirtualDeviceService |
使用搭配 |
VpnManagementService |
使用搭配 |
WallpaperService |
使用 搭配 |
WifiAwareService |
使用 搭配 |
WifiP2pService |
使用 搭配 |
WifiRttRangingService |
使用 搭配 |
WifiService |
使用 搭配 |
WindowService |
使用 搭配 |
屬性
Application |
傳回擁有此服務的應用程式。 (繼承來源 Service) |
ApplicationContext |
傳回目前進程之單一全域 Application 對象的內容。 (繼承來源 ContextWrapper) |
ApplicationInfo |
傳回此內容套件的完整應用程式資訊。 (繼承來源 ContextWrapper) |
Assets |
傳回應用程式套件的 AssetManager 實例。 (繼承來源 ContextWrapper) |
AttributionSource |
OffHostApduService 是一個方便 |
AttributionTag |
屬性可用於複雜的應用程式中,以邏輯方式分隔應用程式的部分。 (繼承來源 Context) |
BaseContext | (繼承來源 ContextWrapper) |
CacheDir |
傳回檔案系統上應用程式特定快取目錄的絕對路徑。 (繼承來源 ContextWrapper) |
Class |
傳回這個 |
ClassLoader |
傳回類別載入器,您可用來擷取此封裝中的類別。 (繼承來源 ContextWrapper) |
CodeCacheDir |
傳回檔案系統上應用程式特定快取目錄的絕對路徑,該目錄是專為儲存快取的程式代碼所設計。 (繼承來源 ContextWrapper) |
ContentResolver |
傳回應用程式套件的 ContentResolver 實例。 (繼承來源 ContextWrapper) |
DataDir |
OffHostApduService 是一個方便 |
DeviceId |
取得此內容相關聯的裝置標識碼。 (繼承來源 Context) |
Display |
取得與此內容相關聯的顯示。 (繼承來源 Context) |
ExternalCacheDir |
傳回主要外部檔案系統上目錄的絕對路徑(也就是 ExternalStorageDirectory 應用程式可以放置其擁有之快取檔案的位置。 (繼承來源 ContextWrapper) |
FilesDir |
傳回檔系統上用來儲存檔案 OpenFileOutput(String, FileCreationMode) 的目錄絕對路徑。 (繼承來源 ContextWrapper) |
ForegroundServiceType |
如果服務已透過呼叫成為前景服務 |
Handle |
基礎Android實例的句柄。 (繼承來源 Object) |
IsDeviceProtectedStorage |
OffHostApduService 是一個方便 |
IsRestricted |
指出此內容是否受到限制。 (繼承來源 Context) |
IsUiContext |
如果內容是可存取、 或 |
JniIdentityHashCode |
OffHostApduService 是一個方便 |
JniPeerMembers |
OffHostApduService 是一個方便 |
MainExecutor |
|
MainLooper |
傳回目前進程之主線程的迴圈器。 (繼承來源 ContextWrapper) |
NoBackupFilesDir |
傳回檔案系統上目錄的絕對路徑,類似於 FilesDir。 (繼承來源 ContextWrapper) |
ObbDir |
傳回此應用程式 OBB 檔案(如果有的話)可找到的主要外部記憶體目錄。 (繼承來源 ContextWrapper) |
OpPackageName |
傳回應該用於 |
PackageCodePath |
傳回此內容主要 Android 套件的完整路徑。 (繼承來源 ContextWrapper) |
PackageManager |
傳回 PackageManager 實例以尋找全域套件資訊。 (繼承來源 ContextWrapper) |
PackageName |
傳回此應用程式套件的名稱。 (繼承來源 ContextWrapper) |
PackageResourcePath |
傳回此內容主要 Android 套件的完整路徑。 (繼承來源 ContextWrapper) |
Params |
如果透過 建立此內容,則傳回此內容所建立 |
PeerReference |
OffHostApduService 是一個方便 |
Resources |
傳回應用程式套件的 Resources 實例。 (繼承來源 ContextWrapper) |
Theme |
傳回與此內容相關聯的 Theme 物件。 (繼承來源 ContextWrapper) |
ThresholdClass |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
ThresholdType |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
Wallpaper | (繼承來源 ContextWrapper) |
WallpaperDesiredMinimumHeight | (繼承來源 ContextWrapper) |
WallpaperDesiredMinimumWidth | (繼承來源 ContextWrapper) |
方法
明確介面實作
IJavaPeerable.Disposed() |
OffHostApduService 是一個方便 |
IJavaPeerable.DisposeUnlessReferenced() |
OffHostApduService 是一個方便 |
IJavaPeerable.Finalized() |
OffHostApduService 是一個方便 |
IJavaPeerable.JniManagedPeerState |
OffHostApduService 是一個方便 |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
OffHostApduService 是一個方便 |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
OffHostApduService 是一個方便 |
IJavaPeerable.SetPeerReference(JniObjectReference) |
OffHostApduService 是一個方便 |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
OffHostApduService 是一個方便 |
GetJniTypeName(IJavaPeerable) |
OffHostApduService 是一個方便 |