Delphi で Android の getSystemService を使用する

Android の [getSystemService]( https://developer.android.com/reference/android/app/Activity#getSystemService(java.lang.String) ) は、システムサービスが使用できるかを判定するもので、Delphi のソースコード内でも

```pascal

// uses に Androidapi.Helpers, Androidapi.JNI.Javatypes, Androidapi.JNI.GRaphicsContentViewText
// の追加が必要

var
  unknownService: JObject
  ：
begin
  ：
unknownService := TAndroidHelper.Activity.getSystemService(TJContext.JavaClass.CLIPBOARD_SERVICE);
if unknownService <> nil then
  ：
  ：
end;
```

というように Java のコードとほとんど変わらずに記述して使用できます。

以下、getSystemService で判定できるサービスをざくっと記します。 ( 訳もざっくりです )
Delphi では、BIND_ABOVE_CLIENT などもサポートしていますが、サービスに絞ってこれらは割愛します。
また、現時点(10.2 Tokyo Release 3) では、level 28 の EUICC_SERVICE は未サポートでした。


| Service | 説明 |
|:--------|:----------------|
|ACCESSIBILITY_SERVICE|登録されたイベントリスナーを介してユーザーに UI イベントのフィードバックを与えるための AccessibilityManager を取得|
|ACCOUNT_SERVICE| インテントを受け取るための AccountManager を取得|
|ACTIVITY_SERVICE| アクティビティ・サービス・プロセスの情報をやりとりするための ActivityManager を取得|
|ALARM_SERVICE| インテントを受信するための AlarmManager を取得|
|APPWIDGET_SERVICE| AppWidgets にアクセスするための AppWidgetManager を取得|
|APP_OPS_SERVICE |デバイス上のアプリケーション操作を追跡するための AppOpsManager を取得|
|AUDIO_SERVICE| ボリューム、リンガーモード、およびオーディオルーティングの管理を処理する AudioManager を取得|
|BATTERY_SERVICE| バッテリー状態を管理するための BatteryManager を取得|
|BLUETOOTH_SERVICE | Bluetooth を使用するための BluetoothManager を取得|
|CAMERA_SERVICE | カメラデバイスと情報をやりとりするための CameraManager を取得|
|CAPTIONING_SERVICE |キャプションプロパティを取得し、キャプションの設定の変更をリスンするためのCaptioningManagerを取得|
|CARRIER_CONFIG_SERVICE | キャリアコンフィグレーション値を読み込むための CarrierConfigManager を取得|
|CLIPBOARD_SERVICE  |グローバルクリップボードの内容にアクセスして変更するための ClipboardManager を取得|
|COMPANION_DEVICE_SERVICE  |コンパニオンデバイスを管理するための CompanionDeviceManager を取得|
|CONNECTIVITY_SERVICE | ネットワーク接続の管理を処理する ConnectivityManager を取得|
|CONSUMER_IR_SERVICE | デバイスから赤外線信号を送信するための ConsumerIrManager を取得|
|CROSS_PROFILE_APPS_SERVICE |クロスプロファイル操作のために CrossProfileApps を取得|
|DEVICE_POLICY_SERVICE | グローバルデバイスポリシー管理を扱う DevicePolicyManager を取得|
|DISPLAY_SERVICE | ディスプレイデバイスと対話するための DisplayManager を取得|
|DOWNLOAD_SERVICE| HTTPダウンロードを要求する DownloadManager を取得|
|DROPBOX_SERVICE|  診断ログを記録するための DropBoxManager インスタンスを取得|
|FINGERPRINT_SERVICE | 指紋の管理を処理する FingerprintManagerを取得|
|HARDWARE_PROPERTIES_SERVICE | ハードウェアプロパティサービスにアクセスするための HardwarePropertiesManagerを 取得|
|INPUT_METHOD_SERVICE | 入力メソッドにアクセスするための InputMethodManager を取得|
|INPUT_SERVICE | 入力デバイスと対話するための InputManager を取得します。|
|IPSEC_SERVICE |IPSec を使用してソケットまたはネットワークを暗号化するための IpSecManager を取得|
|JOB_SCHEDULER_SERVICE  |一時的なバックグラウンドタスクを管理するための JobScheduler インスタンスを取得|
|KEYGUARD_SERVICE | 通知を制御するための NotificationManager を取得|
|LAUNCHER_APPS_SERVICE | ユーザーのプロファイル全体で起動可能なアプリケーションを照会および監視する LauncherApps を取得|
|LAYOUT_INFLATER_SERVICE |コンテキストでレイアウトリソースを拡張するための LayoutInflater を取得 |
|LOCATION_SERVICE |ロケーション更新を制御する LocationManager を取得 |
|MEDIA_PROJECTION_SERVICE |メディア投影セッションを管理する MediaProjectionManager インスタンスを取得 |
|MEDIA_ROUTER_SERVICE |メディアのルーティングを制御および管理する MediaRouter を取得| 
|MEDIA_SESSION_SERVICE |メディアセッションを管理する MediaSessionManager を取得 |
|MIDI_SERVICE|MIDIサービスにアクセスするための MidiManager を取得 |
|NETWORK_STATS_SERVICE|ネットワーク使用状況統計を照会するための NetworkStatsManager を取得 |
|NFC_SERVICE| NFCを使用するための MfcManager を取得 |
|NOTIFICATION_SERVICE | バッググラウンド通知を管理する NotificationManager を取得|
|NSD_SERVICE |ネットワークサービスの検知を管理する NsdManager を取得|
|POWER_SERVICE |電源を管理する PowerManager を取得|
|PRINT_SERVICE |印刷に関する PrintManager の取得|
|RESTRICTIONS_SERVICE |制限付き操作の許可を要求する RestrictionsManager を取得|
|SEARCH_SERVICE | 検索を処理する SearchManager を取得。Configuration.UI_MODE_TYPE_WATCHはSearchManager をサポートしていません。|
|SENSOR_SERVICE |センサにアクセスするための SensorManager を取得 |
|SHORTCUT_SERVICE |ランチャーショートカットサービスにアクセスするための ShortcutManager を取得 |
|STORAGE_SERVICE |システムストレージ機能にアクセスするための StorageManager を取得 |
|STORAGE_STATS_SERVICE |システムストレージ統計にアクセスするための StorageStatsManager を取得 |
|SYSTEM_HEALTH_SERVICE | システム状態（バッテリ、電力、メモリなど）にアクセスするためのSystemHealthManager を取得|
|TELECOM_SERVICE |TelecomManager を取得し、デバイスの通信関連機能を管理 |
|TELEPHONY_SERVICE |デバイスの端末識別コードの管理行なう TelephonyManager を取得 |
|TELEPHONY_SUBSCRIPTION_SERVICE |デバイスの端末識別コードサブスクリプションの管理を行なう SubscriptionManager を取得 |
|TEXT_CLASSIFICATION_SERVICE | テキスト分類サービス用の TextClassificationManager を取得|
|TEXT_SERVICES_MANAGER_SERVICE |テキストサービスにアクセスするための TextServicesManager を取得 |
|TV_INPUT_SERVICE |デバイスのTV入力と対話するための TvInputManager を取得 |
|UI_MODE_SERVICE |UIモードを制御する UiModeManager を取得 |
|USAGE_STATS_SERVICE |デバイス使用状況統計を照会するための UsageStatsManager を取得 |
|USB_SERVICE |USBデバイスへのアクセス（USBホストとして）とUSBデバイスとしてのこのデバイスの動作を制御するための UsbManager を取得 |
|USER_SERVICE |複数のユーザーをサポートするデバイス上のユーザーを管理するための UserManager を取得 |
|VIBRATOR_SERVICE | 振動(バイブレータ)とやりとりするための Vibrator を取得|
|WALLPAPER_SERVICE |壁紙にアクセスするための com.android.server.WallpaperService を取得 |
|WIFI_AWARE_SERVICE |Wi-Fi Aware の管理を処理する WifiAwareManager を取得 |
|WIFI_P2P_SERVICE |Wi-Fiピアツーピア接続の管理を処理する WifiP2pManager を取得 |
|WIFI_RTT_RANGING_SERVICE | WiFi でデバイスとの位置測定を行なう WifiRttManager を取得 (WIFI_RTT_SERVICE に変わる予定) |
|WIFI_SERVICE |Wi-Fiアクセスを管理する WifiManager を取得 |
|WINDOW_SERVICE |システムのウィンドウマネージャにアクセスするためのWindowManagerを取得 |