語言

Context.GetSystemService 方法

定義

多載

名稱 Description
GetSystemService(Class)

依類別將句柄回傳至系統層級服務。

GetSystemService(String)

以名稱將句柄回傳給系統層級服務。

GetSystemService(Class)

依類別將句柄回傳至系統層級服務。

[Android.Runtime.Register("getSystemService", "(Ljava/lang/Class;)Ljava/lang/Object;", "", ApiSince=23)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public Java.Lang.Object? GetSystemService(Java.Lang.Class serviceClass);
[<Android.Runtime.Register("getSystemService", "(Ljava/lang/Class;)Ljava/lang/Object;", "", ApiSince=23)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
member this.GetSystemService : Java.Lang.Class -> Java.Lang.Object

參數

serviceClass
Class

所期望服務的等級。

傳回

服務或 null 類別是否支援系統服務。 注意: <b>絕對不要</> b 如果名稱不被支持,就丟棄 a RuntimeException 。

屬性

備註

依類別將句柄回傳至系統層級服務。

目前可用的職業包括:android.view.WindowManager, android.view.LayoutInflater, 。 android.app.ActivityManagerandroid.os.PowerManagerandroid.app.AlarmManagerandroid.app.NotificationManagerandroid.app.KeyguardManagerandroid.location.LocationManagerandroid.app.SearchManagerandroid.os.Vibratorandroid.net.ConnectivityManagerandroid.net.wifi.WifiManagerandroid.media.AudioManagerandroid.media.MediaRouterandroid.telephony.TelephonyManagerandroid.telephony.SubscriptionManagerandroid.view.inputmethod.InputMethodManagerandroid.app.UiModeManagerandroid.app.DownloadManagerandroid.os.BatteryManagerandroid.app.job.JobSchedulerandroid.app.usage.NetworkStatsManagerandroid.content.pm.verify.domain.DomainVerificationManagerandroid.view.displayhash.DisplayHashManagerandroid.security.authenticationpolicy.AuthenticationPolicyManager

注意:透過此 API 獲得的系統服務可能與其來源的上下文密切相關聯。 一般而言,不要在不同情境(活動、應用程式、服務、提供者等)間共享服務物件。

注意:即時應用程式PackageManager#isInstantApp()(回傳為 true)無法使用以下系統服務:#DEVICE_POLICY_SERVICE、#FINGERPRINT_SERVICE、#KEYGUARD_SERVICE、。 #SHORTCUT_SERVICE#USB_SERVICE#WALLPAPER_SERVICE#WIFI_P2P_SERVICE#WIFI_SERVICE#WIFI_AWARE_SERVICE 對於這些服務,此方法將返回 null。 一般來說,如果你是以即時應用程式執行,應該總是檢查此方法的結果是否為 null。

Java 文件 android.content.Context.getSystemService(java.lang.Class<T>)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

GetSystemService(String)

以名稱將句柄回傳給系統層級服務。

[Android.Runtime.Register("getSystemService", "(Ljava/lang/String;)Ljava/lang/Object;", "GetGetSystemService_Ljava_lang_String_Handler")]
public abstract Java.Lang.Object? GetSystemService(string name);
[<Android.Runtime.Register("getSystemService", "(Ljava/lang/String;)Ljava/lang/Object;", "GetGetSystemService_Ljava_lang_String_Handler")>]
abstract member GetSystemService : string -> Java.Lang.Object

參數

name
String

想要服務的名稱。

傳回

服務名稱 null 或名稱不存在。

屬性

備註

以名稱將句柄回傳給系統層級服務。 回傳物件的類別會依請求名稱而異。 目前可用的名稱有:

<dl><dt>#WINDOW_SERVICE(「視窗」)dd <> 頂層視窗管理器,可放置自訂視窗。 回傳的物件為 android.view.WindowManager。 必須僅從視覺情境(如活動)或以 #createWindowContext(int, Bundle)創建的情境中取得,這些情境會根據螢幕上區域的配置與視覺範圍進行調整。 < > #LAYOUT_INFLATER_SERVICE dt(「layout_inflater」)<dd> Aandroid.view.LayoutInflater,用於在此情境中膨脹版面資源。 必須僅從視覺情境(如活動)或以 #createWindowContext(int, Bundle)創建的情境中取得,這些情境會根據螢幕上區域的配置與視覺範圍進行調整。 < > #ACTIVITY_SERVICE dt(「活動」)<dd> Aandroid.app.ActivityManager,因為與系統的全域活動狀態互動。 < > #WALLPAPER_SERVICE dt(「壁紙」)<dd> A android.service.wallpaper.WallpaperService 用於此語境中的桌布存取。 必須僅從視覺情境(如活動)或以 #createWindowContext(int, Bundle)創建的情境中取得,這些情境會根據螢幕上區域的配置與視覺範圍進行調整。 <DT>#POWER_SERVICE (「電力」) <DD> A android.os.PowerManager ,用於控制電源管理。 < > #ALARM_SERVICE dt(「警報」)<dd> Aandroid.app.AlarmManager,因在您選擇的時間接收意圖。 <dt>#NOTIFICATION_SERVICE (「通知」) <dd> A android.app.NotificationManager ,用於通知使用者背景事件。 <dt>#KEYGUARD_SERVICE (「KeyGuard」) <DD> A android.app.KeyguardManager ,用於控制KeyGuard。 <dt>#LOCATION_SERVICE (「位置」) <dd> A android.location.LocationManager 用於控制位置(例如 GPS)更新。 <dt>#SEARCH_SERVICE (「搜尋」) <dd> A android.app.SearchManager ,用於處理搜尋。 < > #VIBRATOR_MANAGER_SERVICE dt(「vibrator_manager」)<dd> Aandroid.os.VibratorManager,用於存取裝置震動器、與個別震動器互動,並在多個震動器上播放同步效果。 < > #VIBRATOR_SERVICE dt(「震動器」)<dd> Aandroid.os.Vibrator,用於與震動器硬體互動。 <dt>#CONNECTIVITY_SERVICE (「連接性」) <dd> A android.net.ConnectivityManager ConnectivityManager 用於處理網路連線管理。 <dt>#IPSEC_SERVICE(「ipsec」)dd <> A android.net.IpSecManager IpSecManager 用於管理 socket 與網路上的 IPSec。 <DT>#WIFI_SERVICE (「WiFi」) <DD> A android.net.wifi.WifiManager WifiManager 用於管理 Wi-Fi 連線。 在 Android 7 之前的版本中,應僅從應用程式上下文取得,且不應從其他衍生上下文取得,以避免呼叫程序內的記憶體洩漏。 <dt>#WIFI_AWARE_SERVICE (「wifiaware」) <dd> A android.net.wifi.aware.WifiAwareManager WifiAwareManager ,用於管理 Wi-Fi A,發現與連接。 <dt>#WIFI_P2P_SERVICE (「wifip2p」) <dd> A android.net.wifi.p2p.WifiP2pManager WifiP2pManager 用於管理 Wi-Fi Direct 連線。 <dt>#INPUT_METHOD_SERVICE (「input_method」) <dd> An android.view.inputmethod.InputMethodManager InputMethodManager 用於輸入法管理。 <dt>#UI_MODE_SERVICE (「uimode」) <dd> An android.app.UiModeManager 用於控制 UI 模式。 <dt>#DOWNLOAD_SERVICE(「下載」) <> dd A android.app.DownloadManager 用於請求 HTTP 下載 <dt>#BATTERY_SERVICE(「電池管理器」) <> dd A android.os.BatteryManager 用於管理電池狀態 <dt>#JOB_SCHEDULER_SERVICE(「工作管理員」)<>dd A android.app.job.JobScheduler 用於管理排程任務 <dt>#NETWORK_STATS_SERVICE(「網路統計」)dd <> A android.app.usage.NetworkStatsManager NetworkStatsManager 用於查詢網路使用統計。 <dt>#HARDWARE_PROPERTIES_SERVICE (「hardware_properties」) <dd> A android.os.HardwarePropertiesManager ,用於存取硬體屬性。 <dt>#DOMAIN_VERIFICATION_SERVICE (「domain_verification」) <dd> A android.content.pm.verify.domain.DomainVerificationManager ,用於存取網域核准狀態。 <dt>#DISPLAY_HASH_SERVICE (「display_hash」) <dd> A android.view.displayhash.DisplayHashManager 用於管理顯示雜湊。 <dt>#AUTHENTICATION_POLICY_SERVICE (「authentication_policy」) <dd> A android.security.authenticationpolicy.AuthenticationPolicyManager ,用於管理裝置上的認證相關政策。 </dl>

注意:透過此 API 獲得的系統服務可能與其來源的上下文密切相關聯。 一般而言,不要在不同情境(活動、應用程式、服務、提供者等)間共享服務物件。

注意:即時應用程式PackageManager#isInstantApp()(回傳為 true)無法使用以下系統服務:#DEVICE_POLICY_SERVICE、#FINGERPRINT_SERVICE、#KEYGUARD_SERVICE、。 #SHORTCUT_SERVICE#USB_SERVICE#WALLPAPER_SERVICE#WIFI_P2P_SERVICE#WIFI_SERVICE#WIFI_AWARE_SERVICE 對於這些服務,此方法將返回 null。 一般來說,如果你是以即時應用程式執行,應該總是檢查此方法的結果是否為 null。

注意:實作此方法時,請記得新版 Android 可能會新增服務,所以如果你只想找上述明確名稱,記得在不認識名稱和 mdash 時回傳 null ;若拋出 RuntimeException 例外,應用程式可能會在新版 Android 版本中出問題。

Java 文件 android.content.Context.getSystemService(java.lang.String)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

另請參閱

適用於