一、Logcat
二、Dumpsys
参考链接:https://mikejun.blog.csdn.net/article/details/134957247
bash
C:\Users\pengcheng.ding>adb shell dumpsys --help
usage: dumpsys
To dump all services.
or:
dumpsys [-t TIMEOUT] [--priority LEVEL] [--clients] [--dump] [--pid] [--thread] [--help | -l | --skip SERVICES | SERVICE [ARGS]]
--help: shows this help
-l: only list services, do not dump them
-t TIMEOUT_SEC: TIMEOUT to use in seconds instead of default 10 seconds
-T TIMEOUT_MS: TIMEOUT to use in milliseconds instead of default 10 seconds
--clients: dump client PIDs instead of usual dump
--dump: ask the service to dump itself (this is the default)
--pid: dump PID instead of usual dump
--proto: filter services that support dumping data in proto format. Dumps
will be in proto format.
--priority LEVEL: filter services based on specified priority
LEVEL must be one of CRITICAL | HIGH | NORMAL
--skip SERVICES: dumps all services but SERVICES (comma-separated list)
--stability: dump binder stability information instead of usual dump
--thread: dump thread usage instead of usual dump
SERVICE [ARGS]: dumps only service SERVICE, optionally passing ARGS to it
dumpsys基本命令如上,adb shell dumpsys xxx,其中xxx通常为android servicemanager里面注册的服务,只要adb shell dumpsys -l能输出的服务都可以通过此命令来dumpsys一些关键信息。如下依次来介绍dumpsys实现原理。
1、dumpsys进程
cpp
//frameworks/native/cmds/dumpsys/Android.bp
cc_binary {
name: "dumpsys",
defaults: ["dumpsys_defaults"],
srcs: [ "main.cpp", ],
shared_libs: [ "packagemanager_aidl-cpp", ],
}
cc_defaults {
name: "dumpsys_defaults",
cflags: [ "-Wall", "-Werror", ],
srcs: [ "dumpsys.cpp", ],
shared_libs: [
"libbase",
"libutils",
"liblog",
"libbinder",
"libbinderdebug",
],
static_libs: [ "libserviceutils", ],
}
//frameworks/native/cmds/dumpsys/main.cpp
int main(int argc, char* const argv[]) {
signal(SIGPIPE, SIG_IGN);
sp<IServiceManager> sm = defaultServiceManager();
fflush(stdout);
if (sm == nullptr) {
ALOGE("Unable to get default service manager!");
std::cerr << "dumpsys: Unable to get default service manager!" << std::endl;
return 20;
}
Dumpsys dumpsys(sm.get()); //核心逻辑
return dumpsys.main(argc, argv);
}
如上代码dumpsys就是一个普通的native进程,核心的逻辑还是frameworks/native/cmds/dumpsys/dumpsys.cpp的main函数:
因此dumpsys xxx最后是通过servicemanager让系统Service进行了dump,常用的dumpsys命令如下:
bash
adb shell dumpsys activity //查询AMS服务相关信息
adb shell dumpsys package //查询包管理相关信息
adb shell dumpsys window //查询WMS服务相关信息
adb shell dumpsys meminfo/cpuinfo/gfxinfo //查询内存/CPU/帧率相关信息
adb shell dumpsys power/batterystats/battery //查询电源相关信息/电池状态/电池
adb shell dumpsys alarm/location //查询闹钟/位置相关信息
adb shell dumpsys user/device_policy //查询用户相关信息
adb shell dumpsys connectivity/netpolicy/netstats //查询网络连接/策略/状态
adb shell dumpsys network_management //查询网络管理相关信息
所有的service定义和service注册的字符串全在如下文件进行frameworks/base/core/java/android/content/Context.java进行定义
java
http://aospxref.com/android-14.0.0_r2/xref/frameworks/base/core/java/android/content/Context.java#4437
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.PowerManager} for controlling power management,
* including "wake locks," which let you keep the device on while
* you're running long tasks.
*/
public static final String POWER_SERVICE = "power";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.PowerStatsService} for accessing power stats
* service.
*
* @see #getSystemService(String)
* @hide
*/
public static final String POWER_STATS_SERVICE = "powerstats";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.RecoverySystem} for accessing the recovery system
* service.
*
* @see #getSystemService(String)
* @hide
*/
public static final String RECOVERY_SERVICE = "recovery";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.SystemUpdateManager} for accessing the system update
* manager service.
*
* @see #getSystemService(String)
* @hide
*/
@SystemApi
public static final String SYSTEM_UPDATE_SERVICE = "system_update";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.view.WindowManager} for accessing the system's window
* manager.
*
* @see #getSystemService(String)
* @see android.view.WindowManager
*/
@UiContext
public static final String WINDOW_SERVICE = "window";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.view.LayoutInflater} for inflating layout resources in this
* context.
*
* @see #getSystemService(String)
* @see android.view.LayoutInflater
*/
@UiContext
public static final String LAYOUT_INFLATER_SERVICE = "layout_inflater";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.accounts.AccountManager} for receiving intents at a
* time of your choosing.
*
* @see #getSystemService(String)
* @see android.accounts.AccountManager
*/
public static final String ACCOUNT_SERVICE = "account";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.ActivityManager} for interacting with the global
* system state.
*
* @see #getSystemService(String)
* @see android.app.ActivityManager
*/
public static final String ACTIVITY_SERVICE = "activity";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.ActivityTaskManager} for interacting with the global system state.
*
* @see #getSystemService(String)
* @see android.app.ActivityTaskManager
* @hide
*/
public static final String ACTIVITY_TASK_SERVICE = "activity_task";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.UriGrantsManager} for interacting with the global system state.
*
* @see #getSystemService(String)
* @see android.app.UriGrantsManager
* @hide
*/
public static final String URI_GRANTS_SERVICE = "uri_grants";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.AlarmManager} for receiving intents at a
* time of your choosing.
*
* @see #getSystemService(String)
* @see android.app.AlarmManager
*/
public static final String ALARM_SERVICE = "alarm";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.NotificationManager} for informing the user of
* background events.
*
* @see #getSystemService(String)
* @see android.app.NotificationManager
*/
public static final String NOTIFICATION_SERVICE = "notification";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.view.accessibility.AccessibilityManager} for giving the user
* feedback for UI events through the registered event listeners.
*
* @see #getSystemService(String)
* @see android.view.accessibility.AccessibilityManager
*/
public static final String ACCESSIBILITY_SERVICE = "accessibility";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.view.accessibility.CaptioningManager} for obtaining
* captioning properties and listening for changes in captioning
* preferences.
*
* @see #getSystemService(String)
* @see android.view.accessibility.CaptioningManager
*/
public static final String CAPTIONING_SERVICE = "captioning";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.KeyguardManager} for controlling keyguard.
*
* @see #getSystemService(String)
* @see android.app.KeyguardManager
*/
public static final String KEYGUARD_SERVICE = "keyguard";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.location.LocationManager} for controlling location
* updates.
*
* @see #getSystemService(String)
* @see android.location.LocationManager
*/
public static final String LOCATION_SERVICE = "location";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.location.CountryDetector} for detecting the country that
* the user is in.
*
* @hide
*/
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 115609023)
public static final String COUNTRY_DETECTOR = "country_detector";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.app.SearchManager} for handling searches.
*
* <p>
* {@link Configuration#UI_MODE_TYPE_WATCH} does not support
* {@link android.app.SearchManager}.
*
* @see #getSystemService
* @see android.app.SearchManager
*/
public static final String SEARCH_SERVICE = "search";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.hardware.SensorManager} for accessing sensors.
*
* @see #getSystemService(String)
* @see android.hardware.SensorManager
*/
public static final String SENSOR_SERVICE = "sensor";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.hardware.SensorPrivacyManager} for accessing sensor privacy
* functions.
*
* @see #getSystemService(String)
* @see android.hardware.SensorPrivacyManager
*
* @hide
*/
public static final String SENSOR_PRIVACY_SERVICE = "sensor_privacy";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.os.storage.StorageManager} for accessing system storage
* functions.
*
* @see #getSystemService(String)
* @see android.os.storage.StorageManager
*/
public static final String STORAGE_SERVICE = "storage";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.app.usage.StorageStatsManager} for accessing system storage
* statistics.
*
* @see #getSystemService(String)
* @see android.app.usage.StorageStatsManager
*/
public static final String STORAGE_STATS_SERVICE = "storagestats";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* com.android.server.WallpaperService for accessing wallpapers.
*
* @see #getSystemService(String)
*/
@UiContext
public static final String WALLPAPER_SERVICE = "wallpaper";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link android.os.VibratorManager}
* for accessing the device vibrators, interacting with individual ones and playing synchronized
* effects on multiple vibrators.
*
* @see #getSystemService(String)
* @see android.os.VibratorManager
*/
@SuppressLint("ServiceName")
public static final String VIBRATOR_MANAGER_SERVICE = "vibrator_manager";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link android.os.Vibrator} for
* interacting with the vibration hardware.
*
* @deprecated Use {@link android.os.VibratorManager} to retrieve the default system vibrator.
* @see #getSystemService(String)
* @see android.os.Vibrator
*/
@Deprecated
public static final String VIBRATOR_SERVICE = "vibrator";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.app.StatusBarManager} for interacting with the status bar and quick settings.
*
* @see #getSystemService(String)
* @see android.app.StatusBarManager
*
*/
@SuppressLint("ServiceName")
public static final String STATUS_BAR_SERVICE = "statusbar";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.ConnectivityManager} for handling management of
* network connections.
*
* @see #getSystemService(String)
* @see android.net.ConnectivityManager
*/
public static final String CONNECTIVITY_SERVICE = "connectivity";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.PacProxyManager} for handling management of
* pac proxy information.
*
* @see #getSystemService(String)
* @see android.net.PacProxyManager
* @hide
*/
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
public static final String PAC_PROXY_SERVICE = "pac_proxy";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link android.net.vcn.VcnManager}
* for managing Virtual Carrier Networks
*
* @see #getSystemService(String)
* @see android.net.vcn.VcnManager
* @hide
*/
public static final String VCN_MANAGEMENT_SERVICE = "vcn_management";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.net.INetd} for communicating with the network stack
* @hide
* @see #getSystemService(String)
* @hide
*/
@SystemApi
public static final String NETD_SERVICE = "netd";
/**
* Use with {@link android.os.ServiceManager.getService()} to retrieve a
* {@link INetworkStackConnector} IBinder for communicating with the network stack
* @hide
* @see NetworkStackClient
*/
public static final String NETWORK_STACK_SERVICE = "network_stack";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link android.net.TetheringManager}
* for managing tethering functions.
* @hide
* @see android.net.TetheringManager
*/
@SystemApi
public static final String TETHERING_SERVICE = "tethering";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.net.IpSecManager} for encrypting Sockets or Networks with
* IPSec.
*
* @see #getSystemService(String)
*/
public static final String IPSEC_SERVICE = "ipsec";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link android.net.VpnManager} to
* manage profiles for the platform built-in VPN.
*
* @see #getSystemService(String)
*/
public static final String VPN_MANAGEMENT_SERVICE = "vpn_management";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.ConnectivityDiagnosticsManager} for performing network connectivity diagnostics
* as well as receiving network connectivity information from the system.
*
* @see #getSystemService(String)
* @see android.net.ConnectivityDiagnosticsManager
*/
public static final String CONNECTIVITY_DIAGNOSTICS_SERVICE = "connectivity_diagnostics";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.TestNetworkManager} for building TUNs and limited-use Networks
*
* @see #getSystemService(String)
* @hide
*/
@TestApi @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
public static final String TEST_NETWORK_SERVICE = "test_network";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.os.IUpdateLock} for managing runtime sequences that
* must not be interrupted by headless OTA application or similar.
*
* @hide
* @see #getSystemService(String)
* @see android.os.UpdateLock
*/
public static final String UPDATE_LOCK_SERVICE = "updatelock";
/**
* Constant for the internal network management service, not really a Context service.
* @hide
*/
public static final String NETWORKMANAGEMENT_SERVICE = "network_management";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link com.android.server.slice.SliceManagerService} for managing slices.
* @hide
* @see #getSystemService(String)
*/
public static final String SLICE_SERVICE = "slice";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.app.usage.NetworkStatsManager} for querying network usage stats.
*
* @see #getSystemService(String)
* @see android.app.usage.NetworkStatsManager
*/
public static final String NETWORK_STATS_SERVICE = "netstats";
/** {@hide} */
public static final String NETWORK_POLICY_SERVICE = "netpolicy";
/** {@hide} */
public static final String NETWORK_WATCHLIST_SERVICE = "network_watchlist";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.wifi.WifiManager} for handling management of
* Wi-Fi access.
*
* @see #getSystemService(String)
* @see android.net.wifi.WifiManager
*/
public static final String WIFI_SERVICE = "wifi";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.net.wifi.wificond.WifiNl80211Manager} for handling management of the
* Wi-Fi nl802.11 daemon (wificond).
*
* @see #getSystemService(String)
* @see android.net.wifi.wificond.WifiNl80211Manager
* @hide
*/
@SystemApi
@SuppressLint("ServiceName")
public static final String WIFI_NL80211_SERVICE = "wifinl80211";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.wifi.p2p.WifiP2pManager} for handling management of
* Wi-Fi peer-to-peer connections.
*
* @see #getSystemService(String)
* @see android.net.wifi.p2p.WifiP2pManager
*/
public static final String WIFI_P2P_SERVICE = "wifip2p";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.net.wifi.aware.WifiAwareManager} for handling management of
* Wi-Fi Aware.
*
* @see #getSystemService(String)
* @see android.net.wifi.aware.WifiAwareManager
*/
public static final String WIFI_AWARE_SERVICE = "wifiaware";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.wifi.WifiScanner} for scanning the wifi universe
*
* @see #getSystemService(String)
* @see android.net.wifi.WifiScanner
* @hide
*/
@SystemApi
public static final String WIFI_SCANNING_SERVICE = "wifiscanner";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.wifi.RttManager} for ranging devices with wifi
*
* @see #getSystemService(String)
* @see android.net.wifi.RttManager
* @hide
*/
@SystemApi
@Deprecated
public static final String WIFI_RTT_SERVICE = "rttmanager";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.wifi.rtt.WifiRttManager} for ranging devices with wifi.
*
* @see #getSystemService(String)
* @see android.net.wifi.rtt.WifiRttManager
*/
public static final String WIFI_RTT_RANGING_SERVICE = "wifirtt";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.lowpan.LowpanManager} for handling management of
* LoWPAN access.
*
* @see #getSystemService(String)
* @see android.net.lowpan.LowpanManager
*
* @hide
*/
public static final String LOWPAN_SERVICE = "lowpan";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link android.net.EthernetManager}
* for handling management of Ethernet access.
*
* @see #getSystemService(String)
* @see android.net.EthernetManager
*
* @hide
*/
@SystemApi
public static final String ETHERNET_SERVICE = "ethernet";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.net.nsd.NsdManager} for handling management of network service
* discovery
*
* @see #getSystemService(String)
* @see android.net.nsd.NsdManager
*/
public static final String NSD_SERVICE = "servicediscovery";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.media.AudioManager} for handling management of volume,
* ringer modes and audio routing.
*
* @see #getSystemService(String)
* @see android.media.AudioManager
*/
public static final String AUDIO_SERVICE = "audio";
/**
* @hide
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.media.AudioDeviceVolumeManager} for handling management of audio device
* (e.g. speaker, USB headset) volume.
*
* @see #getSystemService(String)
* @see android.media.AudioDeviceVolumeManager
*/
@SystemApi
public static final String AUDIO_DEVICE_VOLUME_SERVICE = "audio_device_volume";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.media.MediaTranscodingManager} for transcoding media.
*
* @hide
* @see #getSystemService(String)
* @see android.media.MediaTranscodingManager
*/
@SystemApi
public static final String MEDIA_TRANSCODING_SERVICE = "media_transcoding";
/**
* AuthService orchestrates biometric and PIN/pattern/password authentication.
*
* BiometricService was split into two services, AuthService and BiometricService, where
* AuthService is the high level service that orchestrates all types of authentication, and
* BiometricService is a lower layer responsible only for biometric authentication.
*
* Ideally we should have renamed BiometricManager to AuthManager, because it logically
* corresponds to AuthService. However, because BiometricManager is a public API, we kept
* the old name but changed the internal implementation to use AuthService.
*
* As of now, the AUTH_SERVICE constant is only used to identify the service in
* SystemServiceRegistry and SELinux. To obtain the manager for AUTH_SERVICE, one should use
* BIOMETRIC_SERVICE with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.biometrics.BiometricManager}
*
* Map of the two services and their managers:
* [Service] [Manager]
* AuthService BiometricManager
* BiometricService N/A
*
* @hide
*/
public static final String AUTH_SERVICE = "auth";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.fingerprint.FingerprintManager} for handling management
* of fingerprints.
*
* @see #getSystemService(String)
* @see android.hardware.fingerprint.FingerprintManager
*/
public static final String FINGERPRINT_SERVICE = "fingerprint";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.face.FaceManager} for handling management
* of face authentication.
*
* @hide
* @see #getSystemService
* @see android.hardware.face.FaceManager
*/
public static final String FACE_SERVICE = "face";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.iris.IrisManager} for handling management
* of iris authentication.
*
* @hide
* @see #getSystemService
* @see android.hardware.iris.IrisManager
*/
public static final String IRIS_SERVICE = "iris";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.biometrics.BiometricManager} for handling
* biometric and PIN/pattern/password authentication.
*
* @see #getSystemService
* @see android.hardware.biometrics.BiometricManager
*/
public static final String BIOMETRIC_SERVICE = "biometric";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.media.MediaCommunicationManager}
* for managing {@link android.media.MediaSession2}.
*
* @see #getSystemService(String)
* @see android.media.MediaCommunicationManager
*/
public static final String MEDIA_COMMUNICATION_SERVICE = "media_communication";
/**
* Use with {@link #getSystemService} to retrieve a
* {@link android.media.MediaRouter} for controlling and managing
* routing of media.
*
* @see #getSystemService(String)
* @see android.media.MediaRouter
*/
public static final String MEDIA_ROUTER_SERVICE = "media_router";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.media.session.MediaSessionManager} for managing media Sessions.
*
* @see #getSystemService(String)
* @see android.media.session.MediaSessionManager
*/
public static final String MEDIA_SESSION_SERVICE = "media_session";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.telephony.TelephonyManager} for handling management the
* telephony features of the device.
*
* @see #getSystemService(String)
* @see android.telephony.TelephonyManager
*/
public static final String TELEPHONY_SERVICE = "phone";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.telephony.SubscriptionManager} for handling management the
* telephony subscriptions of the device.
*
* @see #getSystemService(String)
* @see android.telephony.SubscriptionManager
*/
public static final String TELEPHONY_SUBSCRIPTION_SERVICE = "telephony_subscription_service";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.telecom.TelecomManager} to manage telecom-related features
* of the device.
*
* @see #getSystemService(String)
* @see android.telecom.TelecomManager
*/
public static final String TELECOM_SERVICE = "telecom";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.telephony.CarrierConfigManager} for reading carrier configuration values.
*
* @see #getSystemService(String)
* @see android.telephony.CarrierConfigManager
*/
public static final String CARRIER_CONFIG_SERVICE = "carrier_config";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.telephony.euicc.EuiccManager} to manage the device eUICC (embedded SIM).
*
* @see #getSystemService(String)
* @see android.telephony.euicc.EuiccManager
*/
public static final String EUICC_SERVICE = "euicc";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.telephony.euicc.EuiccCardManager} to access the device eUICC (embedded SIM).
*
* @see #getSystemService(String)
* @see android.telephony.euicc.EuiccCardManager
* @hide
*/
@SystemApi
public static final String EUICC_CARD_SERVICE = "euicc_card";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.telephony.MmsManager} to send/receive MMS messages.
*
* @see #getSystemService(String)
* @see android.telephony.MmsManager
* @hide
*/
public static final String MMS_SERVICE = "mms";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.content.ClipboardManager} for accessing and modifying
* the contents of the global clipboard.
*
* @see #getSystemService(String)
* @see android.content.ClipboardManager
*/
public static final String CLIPBOARD_SERVICE = "clipboard";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link TextClassificationManager} for text classification services.
*
* @see #getSystemService(String)
* @see TextClassificationManager
*/
public static final String TEXT_CLASSIFICATION_SERVICE = "textclassification";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.view.selectiontoolbar.SelectionToolbarManager} for selection toolbar service.
*
* @see #getSystemService(String)
* @hide
*/
public static final String SELECTION_TOOLBAR_SERVICE = "selection_toolbar";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.graphics.fonts.FontManager} for font services.
*
* @see #getSystemService(String)
* @see android.graphics.fonts.FontManager
* @hide
*/
@SystemApi
@TestApi
public static final String FONT_SERVICE = "font";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link com.android.server.attention.AttentionManagerService} for attention services.
*
* @see #getSystemService(String)
* @see android.server.attention.AttentionManagerService
* @hide
*/
@TestApi
public static final String ATTENTION_SERVICE = "attention";
/**
* Official published name of the (internal) rotation resolver service.
*
* // TODO(b/178151184): change it back to rotation resolver before S release.
*
* @see #getSystemService(String)
* @hide
*/
public static final String ROTATION_RESOLVER_SERVICE = "resolver";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.view.inputmethod.InputMethodManager} for accessing input
* methods.
*
* @see #getSystemService(String)
*/
public static final String INPUT_METHOD_SERVICE = "input_method";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.view.textservice.TextServicesManager} for accessing
* text services.
*
* @see #getSystemService(String)
*/
public static final String TEXT_SERVICES_MANAGER_SERVICE = "textservices";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.appwidget.AppWidgetManager} for accessing AppWidgets.
*
* @see #getSystemService(String)
*/
public static final String APPWIDGET_SERVICE = "appwidget";
/**
* Official published name of the (internal) voice interaction manager service.
*
* @hide
* @see #getSystemService(String)
*/
public static final String VOICE_INTERACTION_MANAGER_SERVICE = "voiceinteraction";
/**
* Official published name of the (internal) autofill service.
*
* @hide
* @see #getSystemService(String)
*/
public static final String AUTOFILL_MANAGER_SERVICE = "autofill";
/**
* Official published name of the (internal) text to speech manager service.
*
* @hide
* @see #getSystemService(String)
*/
public static final String TEXT_TO_SPEECH_MANAGER_SERVICE = "texttospeech";
/**
* Official published name of the content capture service.
*
* @hide
* @see #getSystemService(String)
*/
@TestApi
@SuppressLint("ServiceName") // TODO: This should be renamed to CONTENT_CAPTURE_SERVICE
public static final String CONTENT_CAPTURE_MANAGER_SERVICE = "content_capture";
/**
* Official published name of the translation service.
*
* @hide
* @see #getSystemService(String)
*/
@SystemApi
@SuppressLint("ServiceName")
public static final String TRANSLATION_MANAGER_SERVICE = "translation";
/**
* Official published name of the translation service which supports ui translation function.
*
* @hide
* @see #getSystemService(String)
*/
@SystemApi
public static final String UI_TRANSLATION_SERVICE = "ui_translation";
/**
* Used for getting content selections and classifications for task snapshots.
*
* @hide
* @see #getSystemService(String)
*/
@SystemApi
public static final String CONTENT_SUGGESTIONS_SERVICE = "content_suggestions";
/**
* Official published name of the app prediction service.
*
* <p><b>NOTE: </b> this service is optional; callers of
* {@code Context.getSystemServiceName(APP_PREDICTION_SERVICE)} should check for {@code null}.
*
* @hide
* @see #getSystemService(String)
*/
@SystemApi
public static final String APP_PREDICTION_SERVICE = "app_prediction";
/**
* Official published name of the search ui service.
*
* <p><b>NOTE: </b> this service is optional; callers of
* {@code Context.getSystemServiceName(SEARCH_UI_SERVICE)} should check for {@code null}.
*
* @hide
* @see #getSystemService(String)
*/
@SystemApi
public static final String SEARCH_UI_SERVICE = "search_ui";
/**
* Used for getting the smartspace service.
*
* <p><b>NOTE: </b> this service is optional; callers of
* {@code Context.getSystemServiceName(SMARTSPACE_SERVICE)} should check for {@code null}.
*
* @hide
* @see #getSystemService(String)
*/
@SystemApi
public static final String SMARTSPACE_SERVICE = "smartspace";
/**
* Used for getting the cloudsearch service.
*
* <p><b>NOTE: </b> this service is optional; callers of
* {@code Context.getSystemServiceName(CLOUDSEARCH_SERVICE)} should check for {@code null}.
*
* @hide
* @see #getSystemService(String)
*/
@SystemApi
public static final String CLOUDSEARCH_SERVICE = "cloudsearch";
/**
* Use with {@link #getSystemService(String)} to access the
* {@link com.android.server.voiceinteraction.SoundTriggerService}.
*
* @hide
* @see #getSystemService(String)
*/
public static final String SOUND_TRIGGER_SERVICE = "soundtrigger";
/**
* Use with {@link #getSystemService(String)} to access the
* {@link com.android.server.soundtrigger_middleware.SoundTriggerMiddlewareService}.
*
* @hide
* @see #getSystemService(String)
*/
public static final String SOUND_TRIGGER_MIDDLEWARE_SERVICE = "soundtrigger_middleware";
/**
* Used for getting the wallpaper effects generation service.
*
* <p><b>NOTE: </b> this service is optional; callers of
* {@code Context.getSystemServiceName(WALLPAPER_EFFECTS_GENERATION_SERVICE)} should check for
* {@code null}.
*
* @hide
* @see #getSystemService(String)
*/
@SystemApi
public static final String WALLPAPER_EFFECTS_GENERATION_SERVICE =
"wallpaper_effects_generation";
/**
* Used to access {@link MusicRecognitionManagerService}.
*
* @hide
* @see #getSystemService(String)
*/
@SystemApi
public static final String MUSIC_RECOGNITION_SERVICE = "music_recognition";
/**
* Official published name of the (internal) permission service.
*
* @see #getSystemService(String)
* @hide
*/
@SystemApi
public static final String PERMISSION_SERVICE = "permission";
/**
* Official published name of the legacy (internal) permission service.
*
* @see #getSystemService(String)
* @hide
*/
//@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
public static final String LEGACY_PERMISSION_SERVICE = "legacy_permission";
/**
* Official published name of the (internal) permission controller service.
*
* @see #getSystemService(String)
* @hide
*/
@SystemApi
public static final String PERMISSION_CONTROLLER_SERVICE = "permission_controller";
/**
* Official published name of the (internal) permission checker service.
*
* @see #getSystemService(String)
* @hide
*/
public static final String PERMISSION_CHECKER_SERVICE = "permission_checker";
/**
* Official published name of the (internal) permission enforcer service.
*
* @see #getSystemService(String)
* @hide
*/
public static final String PERMISSION_ENFORCER_SERVICE = "permission_enforcer";
/**
* Use with {@link #getSystemService(String) to retrieve an
* {@link android.apphibernation.AppHibernationManager}} for
* communicating with the hibernation service.
* @hide
*
* @see #getSystemService(String)
*/
@SystemApi
public static final String APP_HIBERNATION_SERVICE = "app_hibernation";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.app.backup.IBackupManager IBackupManager} for communicating
* with the backup mechanism.
* @hide
*
* @see #getSystemService(String)
*/
@SystemApi
public static final String BACKUP_SERVICE = "backup";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.content.rollback.RollbackManager} for communicating
* with the rollback manager
*
* @see #getSystemService(String)
* @hide
*/
@SystemApi
public static final String ROLLBACK_SERVICE = "rollback";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.scheduling.RebootReadinessManager} for communicating
* with the reboot readiness detector.
*
* @see #getSystemService(String)
* @hide
*/
@SystemApi
public static final String REBOOT_READINESS_SERVICE = "reboot_readiness";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.DropBoxManager} instance for recording
* diagnostic logs.
* @see #getSystemService(String)
*/
public static final String DROPBOX_SERVICE = "dropbox";
/**
* System service name for BackgroundInstallControlService. This service supervises the MBAs
* on device and provides the related metadata of the MBAs.
*
* @hide
*/
@SuppressLint("ServiceName")
public static final String BACKGROUND_INSTALL_CONTROL_SERVICE = "background_install_control";
/**
* System service name for BinaryTransparencyService. This is used to retrieve measurements
* pertaining to various pre-installed and system binaries on device for the purposes of
* providing transparency to the user.
*
* @hide
*/
@SuppressLint("ServiceName")
public static final String BINARY_TRANSPARENCY_SERVICE = "transparency";
/**
* System service name for the DeviceIdleManager.
* @see #getSystemService(String)
* @hide
*/
@TestApi
@SuppressLint("ServiceName") // TODO: This should be renamed to DEVICE_IDLE_SERVICE
public static final String DEVICE_IDLE_CONTROLLER = "deviceidle";
/**
* System service name for the PowerWhitelistManager.
*
* @see #getSystemService(String)
* @hide
*/
@TestApi
@Deprecated
@SuppressLint("ServiceName")
public static final String POWER_WHITELIST_MANAGER = "power_whitelist";
/**
* System service name for the PowerExemptionManager.
*
* @see #getSystemService(String)
* @hide
*/
@TestApi
public static final String POWER_EXEMPTION_SERVICE = "power_exemption";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.admin.DevicePolicyManager} for working with global
* device policy management.
*
* @see #getSystemService(String)
*/
public static final String DEVICE_POLICY_SERVICE = "device_policy";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.UiModeManager} for controlling UI modes.
*
* @see #getSystemService(String)
*/
public static final String UI_MODE_SERVICE = "uimode";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.DownloadManager} for requesting HTTP downloads.
*
* @see #getSystemService(String)
*/
public static final String DOWNLOAD_SERVICE = "download";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.BatteryManager} for managing battery state.
*
* @see #getSystemService(String)
*/
public static final String BATTERY_SERVICE = "batterymanager";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.nfc.NfcManager} for using NFC.
*
* @see #getSystemService(String)
*/
public static final String NFC_SERVICE = "nfc";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.bluetooth.BluetoothManager} for using Bluetooth.
*
* @see #getSystemService(String)
*/
public static final String BLUETOOTH_SERVICE = "bluetooth";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.net.sip.SipManager} for accessing the SIP related service.
*
* @see #getSystemService(String)
*/
/** @hide */
public static final String SIP_SERVICE = "sip";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.hardware.usb.UsbManager} for access to USB devices (as a USB host)
* and for controlling this device's behavior as a USB device.
*
* @see #getSystemService(String)
* @see android.hardware.usb.UsbManager
*/
public static final String USB_SERVICE = "usb";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* Use with {@link #getSystemService} to retrieve a {@link
* android.debug.AdbManager} for access to ADB debug functions.
*
* @see #getSystemService(String)
* @see android.debug.AdbManager
*
* @hide
*/
public static final String ADB_SERVICE = "adb";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.hardware.SerialManager} for access to serial ports.
*
* @see #getSystemService(String)
* @see android.hardware.SerialManager
*
* @hide
*/
public static final String SERIAL_SERVICE = "serial";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.hdmi.HdmiControlManager} for controlling and managing
* HDMI-CEC protocol.
*
* @see #getSystemService(String)
* @see android.hardware.hdmi.HdmiControlManager
* @hide
*/
@SystemApi
public static final String HDMI_CONTROL_SERVICE = "hdmi_control";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.input.InputManager} for interacting with input devices.
*
* @see #getSystemService(String)
* @see android.hardware.input.InputManager
*/
public static final String INPUT_SERVICE = "input";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.display.DisplayManager} for interacting with display devices.
*
* @see #getSystemService(String)
* @see android.hardware.display.DisplayManager
*/
public static final String DISPLAY_SERVICE = "display";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.display.ColorDisplayManager} for controlling color transforms.
*
* @see #getSystemService(String)
* @see android.hardware.display.ColorDisplayManager
* @hide
*/
public static final String COLOR_DISPLAY_SERVICE = "color_display";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.UserManager} for managing users on devices that support multiple users.
*
* @see #getSystemService(String)
* @see android.os.UserManager
*/
public static final String USER_SERVICE = "user";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.content.pm.LauncherApps} for querying and monitoring launchable apps across
* profiles of a user.
*
* @see #getSystemService(String)
* @see android.content.pm.LauncherApps
*/
public static final String LAUNCHER_APPS_SERVICE = "launcherapps";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.content.RestrictionsManager} for retrieving application restrictions
* and requesting permissions for restricted operations.
* @see #getSystemService(String)
* @see android.content.RestrictionsManager
*/
public static final String RESTRICTIONS_SERVICE = "restrictions";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.AppOpsManager} for tracking application operations
* on the device.
*
* @see #getSystemService(String)
* @see android.app.AppOpsManager
*/
public static final String APP_OPS_SERVICE = "appops";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link android.app.role.RoleManager}
* for managing roles.
*
* @see #getSystemService(String)
* @see android.app.role.RoleManager
*/
public static final String ROLE_SERVICE = "role";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.camera2.CameraManager} for interacting with
* camera devices.
*
* @see #getSystemService(String)
* @see android.hardware.camera2.CameraManager
*/
public static final String CAMERA_SERVICE = "camera";
/**
* {@link android.print.PrintManager} for printing and managing
* printers and print tasks.
*
* @see #getSystemService(String)
* @see android.print.PrintManager
*/
public static final String PRINT_SERVICE = "print";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.companion.CompanionDeviceManager} for managing companion devices
*
* @see #getSystemService(String)
* @see android.companion.CompanionDeviceManager
*/
public static final String COMPANION_DEVICE_SERVICE = "companiondevice";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.companion.virtual.VirtualDeviceManager} for managing virtual devices.
*
* On devices without {@link PackageManager#FEATURE_COMPANION_DEVICE_SETUP}
* system feature the {@link #getSystemService(String)} will return {@code null}.
*
* @see #getSystemService(String)
* @see android.companion.virtual.VirtualDeviceManager
*/
@SuppressLint("ServiceName")
public static final String VIRTUAL_DEVICE_SERVICE = "virtualdevice";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.ConsumerIrManager} for transmitting infrared
* signals from the device.
*
* @see #getSystemService(String)
* @see android.hardware.ConsumerIrManager
*/
public static final String CONSUMER_IR_SERVICE = "consumer_ir";
/**
* {@link android.app.trust.TrustManager} for managing trust agents.
* @see #getSystemService(String)
* @see android.app.trust.TrustManager
* @hide
*/
public static final String TRUST_SERVICE = "trust";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.media.tv.interactive.TvInteractiveAppManager} for interacting with TV
* interactive applications on the device.
*
* @see #getSystemService(String)
* @see android.media.tv.interactive.TvInteractiveAppManager
*/
public static final String TV_INTERACTIVE_APP_SERVICE = "tv_interactive_app";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.media.tv.TvInputManager} for interacting with TV inputs
* on the device.
*
* @see #getSystemService(String)
* @see android.media.tv.TvInputManager
*/
public static final String TV_INPUT_SERVICE = "tv_input";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.media.tv.TunerResourceManager} for interacting with TV
* tuner resources on the device.
*
* @see #getSystemService(String)
* @see android.media.tv.TunerResourceManager
* @hide
*/
public static final String TV_TUNER_RESOURCE_MGR_SERVICE = "tv_tuner_resource_mgr";
/**
* {@link android.net.NetworkScoreManager} for managing network scoring.
* @see #getSystemService(String)
* @see android.net.NetworkScoreManager
* @deprecated see
* <a href="{@docRoot}guide/topics/connectivity/wifi-suggest">Wi-Fi Suggestion API</a>
* for alternative API to propose WiFi networks.
* @hide
*/
@SystemApi
@Deprecated
public static final String NETWORK_SCORE_SERVICE = "network_score";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.app.usage.UsageStatsManager} for querying device usage stats.
*
* @see #getSystemService(String)
* @see android.app.usage.UsageStatsManager
*/
public static final String USAGE_STATS_SERVICE = "usagestats";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.app.job.JobScheduler} instance for managing occasional
* background tasks.
* @see #getSystemService(String)
* @see android.app.job.JobScheduler
*/
public static final String JOB_SCHEDULER_SERVICE = "jobscheduler";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.tare.EconomyManager} instance for understanding economic standing.
* @see #getSystemService(String)
* @hide
* @see android.app.tare.EconomyManager
*/
public static final String RESOURCE_ECONOMY_SERVICE = "tare";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.service.persistentdata.PersistentDataBlockManager} instance
* for interacting with a storage device that lives across factory resets.
*
* @see #getSystemService(String)
* @see android.service.persistentdata.PersistentDataBlockManager
* @hide
*/
@SystemApi
public static final String PERSISTENT_DATA_BLOCK_SERVICE = "persistent_data_block";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.service.oemlock.OemLockManager} instance for managing the OEM lock.
*
* @see #getSystemService(String)
* @see android.service.oemlock.OemLockManager
* @hide
*/
@SystemApi
public static final String OEM_LOCK_SERVICE = "oem_lock";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.media.projection.MediaProjectionManager} instance for managing
* media projection sessions.
* @see #getSystemService(String)
* @see android.media.projection.MediaProjectionManager
*/
public static final String MEDIA_PROJECTION_SERVICE = "media_projection";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.media.midi.MidiManager} for accessing the MIDI service.
*
* @see #getSystemService(String)
*/
public static final String MIDI_SERVICE = "midi";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.radio.RadioManager} for accessing the broadcast radio service.
*
* @see #getSystemService(String)
* @hide
*/
public static final String RADIO_SERVICE = "broadcastradio";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.HardwarePropertiesManager} for accessing the hardware properties service.
*
* @see #getSystemService(String)
*/
public static final String HARDWARE_PROPERTIES_SERVICE = "hardware_properties";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.ThermalService} for accessing the thermal service.
*
* @see #getSystemService(String)
* @hide
*/
public static final String THERMAL_SERVICE = "thermalservice";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.PerformanceHintManager} for accessing the performance hinting service.
*
* @see #getSystemService(String)
*/
public static final String PERFORMANCE_HINT_SERVICE = "performance_hint";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.content.pm.ShortcutManager} for accessing the launcher shortcut service.
*
* @see #getSystemService(String)
* @see android.content.pm.ShortcutManager
*/
public static final String SHORTCUT_SERVICE = "shortcut";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.hardware.location.ContextHubManager} for accessing context hubs.
*
* @see #getSystemService(String)
* @see android.hardware.location.ContextHubManager
*
* @hide
*/
@SystemApi
public static final String CONTEXTHUB_SERVICE = "contexthub";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.os.health.SystemHealthManager} for accessing system health (battery, power,
* memory, etc) metrics.
*
* @see #getSystemService(String)
*/
public static final String SYSTEM_HEALTH_SERVICE = "systemhealth";
/**
* Gatekeeper Service.
* @hide
*/
public static final String GATEKEEPER_SERVICE = "android.service.gatekeeper.IGateKeeperService";
/**
* Service defining the policy for access to device identifiers.
* @hide
*/
public static final String DEVICE_IDENTIFIERS_SERVICE = "device_identifiers";
/**
* Service to report a system health "incident"
* @hide
*/
public static final String INCIDENT_SERVICE = "incident";
/**
* Service to assist incidentd and dumpstated in reporting status to the user
* and in confirming authorization to take an incident report or bugreport
* @hide
*/
public static final String INCIDENT_COMPANION_SERVICE = "incidentcompanion";
/**
* Service to assist {@link android.app.StatsManager} that lives in system server.
* @hide
*/
public static final String STATS_MANAGER_SERVICE = "statsmanager";
/**
* Service to assist statsd in obtaining general stats.
* @hide
*/
public static final String STATS_COMPANION_SERVICE = "statscompanion";
/**
* Service to assist statsd in logging atoms from bootstrap atoms.
* @hide
*/
public static final String STATS_BOOTSTRAP_ATOM_SERVICE = "statsbootstrap";
/**
* Use with {@link #getSystemService(String)} to retrieve an {@link android.app.StatsManager}.
* @hide
*/
@SystemApi
public static final String STATS_MANAGER = "stats";
/**
* Use with {@link android.os.ServiceManager.getService()} to retrieve a
* {@link IPlatformCompat} IBinder for communicating with the platform compat service.
* @hide
*/
public static final String PLATFORM_COMPAT_SERVICE = "platform_compat";
/**
* Use with {@link android.os.ServiceManager.getService()} to retrieve a
* {@link IPlatformCompatNative} IBinder for native code communicating with the platform compat
* service.
* @hide
*/
public static final String PLATFORM_COMPAT_NATIVE_SERVICE = "platform_compat_native";
/**
* Service to capture a bugreport.
* @see #getSystemService(String)
* @see android.os.BugreportManager
*/
public static final String BUGREPORT_SERVICE = "bugreport";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.content.om.OverlayManager} for managing overlay packages.
*
* @see #getSystemService(String)
* @see android.content.om.OverlayManager
*/
public static final String OVERLAY_SERVICE = "overlay";
/**
* Use with {@link #getSystemService(String)} to manage resources.
*
* @see #getSystemService(String)
* @see com.android.server.resources.ResourcesManagerService
* @hide
*/
public static final String RESOURCES_SERVICE = "resources";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {android.os.IIdmap2} for managing idmap files (used by overlay
* packages).
*
* @see #getSystemService(String)
* @hide
*/
public static final String IDMAP_SERVICE = "idmap";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link VrManager} for accessing the VR service.
*
* @see #getSystemService(String)
* @hide
*/
@SystemApi
public static final String VR_SERVICE = "vrmanager";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.content.pm.CrossProfileApps} for cross profile operations.
*
* @see #getSystemService(String)
*/
public static final String CROSS_PROFILE_APPS_SERVICE = "crossprofileapps";
/**
* Use with {@link #getSystemService} to retrieve a
* {@link android.se.omapi.ISecureElementService}
* for accessing the SecureElementService.
*
* @hide
*/
@SystemApi
public static final String SECURE_ELEMENT_SERVICE = "secure_element";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.timedetector.TimeDetector}.
* @hide
*
* @see #getSystemService(String)
*/
public static final String TIME_DETECTOR_SERVICE = "time_detector";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.timezonedetector.TimeZoneDetector}.
* @hide
*
* @see #getSystemService(String)
*/
public static final String TIME_ZONE_DETECTOR_SERVICE = "time_zone_detector";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link TimeManager}.
* @hide
*
* @see #getSystemService(String)
*/
@SystemApi
@SuppressLint("ServiceName")
public static final String TIME_MANAGER_SERVICE = "time_manager";
/**
* Binder service name for {@link AppBindingService}.
* @hide
*/
public static final String APP_BINDING_SERVICE = "app_binding";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.telephony.ims.ImsManager}.
*/
public static final String TELEPHONY_IMS_SERVICE = "telephony_ims";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.os.SystemConfigManager}.
* @hide
*/
@SystemApi
public static final String SYSTEM_CONFIG_SERVICE = "system_config";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.telephony.ims.RcsMessageManager}.
* @hide
*/
public static final String TELEPHONY_RCS_MESSAGE_SERVICE = "ircsmessage";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.os.image.DynamicSystemManager}.
* @hide
*/
public static final String DYNAMIC_SYSTEM_SERVICE = "dynamic_system";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.app.blob.BlobStoreManager} for contributing and accessing data blobs
* from the blob store maintained by the system.
*
* @see #getSystemService(String)
* @see android.app.blob.BlobStoreManager
*/
public static final String BLOB_STORE_SERVICE = "blob_store";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link TelephonyRegistryManager}.
* @hide
*/
public static final String TELEPHONY_REGISTRY_SERVICE = "telephony_registry";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.os.BatteryStatsManager}.
* @hide
*/
@SystemApi
@SuppressLint("ServiceName")
public static final String BATTERY_STATS_SERVICE = "batterystats";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.app.appsearch.AppSearchManager} for
* indexing and querying app data managed by the system.
*
* @see #getSystemService(String)
*/
public static final String APP_SEARCH_SERVICE = "app_search";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.content.integrity.AppIntegrityManager}.
* @hide
*/
@SystemApi
public static final String APP_INTEGRITY_SERVICE = "app_integrity";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.content.pm.DataLoaderManager}.
* @hide
*/
public static final String DATA_LOADER_MANAGER_SERVICE = "dataloader_manager";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.os.incremental.IncrementalManager}.
* @hide
*/
public static final String INCREMENTAL_SERVICE = "incremental";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.security.attestationverification.AttestationVerificationManager}.
* @see #getSystemService(String)
* @see android.security.attestationverification.AttestationVerificationManager
* @hide
*/
public static final String ATTESTATION_VERIFICATION_SERVICE = "attestation_verification";
/**
* Use with {@link #getSystemService(String)} to retrieve an
* {@link android.security.FileIntegrityManager}.
* @see #getSystemService(String)
* @see android.security.FileIntegrityManager
*/
public static final String FILE_INTEGRITY_SERVICE = "file_integrity";
/**
* Binder service for remote key provisioning.
*
* @see android.frameworks.rkp.IRemoteProvisioning
* @hide
*/
public static final String REMOTE_PROVISIONING_SERVICE = "remote_provisioning";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.hardware.lights.LightsManager} for controlling device lights.
*
* @see #getSystemService(String)
* @hide
*/
public static final String LIGHTS_SERVICE = "lights";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.uwb.UwbManager}.
*
* @see #getSystemService(String)
* @hide
*/
@SystemApi
public static final String UWB_SERVICE = "uwb";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.DreamManager} for controlling Dream states.
*
* @see #getSystemService(String)
* @hide
*/
@TestApi
public static final String DREAM_SERVICE = "dream";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.telephony.SmsManager} for accessing Sms functionality.
*
* @see #getSystemService(String)
* @hide
*/
public static final String SMS_SERVICE = "sms";
/**
* Use with {@link #getSystemService(String)} to access a {@link PeopleManager} to interact
* with your published conversations.
*
* @see #getSystemService(String)
*/
public static final String PEOPLE_SERVICE = "people";
/**
* Use with {@link #getSystemService(String)} to access device state service.
*
* @see #getSystemService(String)
* @hide
*/
public static final String DEVICE_STATE_SERVICE = "device_state";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.media.metrics.MediaMetricsManager} for interacting with media metrics
* on the device.
*
* @see #getSystemService(String)
* @see android.media.metrics.MediaMetricsManager
*/
public static final String MEDIA_METRICS_SERVICE = "media_metrics";
/**
* Use with {@link #getSystemService(String)} to access system speech recognition service.
*
* @see #getSystemService(String)
* @hide
*/
public static final String SPEECH_RECOGNITION_SERVICE = "speech_recognition";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link GameManager}.
*
* @see #getSystemService(String)
*/
public static final String GAME_SERVICE = "game";
/**
* Use with {@link #getSystemService(String)} to access
* {@link android.content.pm.verify.domain.DomainVerificationManager} to retrieve approval and
* user state for declared web domains.
*
* @see #getSystemService(String)
* @see android.content.pm.verify.domain.DomainVerificationManager
*/
public static final String DOMAIN_VERIFICATION_SERVICE = "domain_verification";
/**
* Use with {@link #getSystemService(String)} to access
* {@link android.view.displayhash.DisplayHashManager} to handle display hashes.
*
* @see #getSystemService(String)
*/
public static final String DISPLAY_HASH_SERVICE = "display_hash";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.LocaleManager}.
*
* @see #getSystemService(String)
*/
public static final String LOCALE_SERVICE = "locale";
/**
* Use with {@link #getSystemService(String)} to retrieve a {@link
* android.safetycenter.SafetyCenterManager} instance for interacting with the safety center.
*
* @see #getSystemService(String)
* @see android.safetycenter.SafetyCenterManager
* @hide
*/
@SystemApi
public static final String SAFETY_CENTER_SERVICE = "safety_center";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.nearby.NearbyManager} to discover nearby devices.
*
* @see #getSystemService(String)
* @see android.nearby.NearbyManager
* @hide
*/
@SystemApi
public static final String NEARBY_SERVICE = "nearby";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.ambientcontext.AmbientContextManager}.
*
* @see #getSystemService(String)
* @see AmbientContextManager
* @hide
*/
@SystemApi
public static final String AMBIENT_CONTEXT_SERVICE = "ambient_context";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.app.wearable.WearableSensingManager}.
*
* @see #getSystemService(String)
* @see WearableSensingManager
* @hide
*/
@SystemApi
public static final String WEARABLE_SENSING_SERVICE = "wearable_sensing";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.health.connect.HealthConnectManager}.
*
* @see #getSystemService(String)
* @see android.health.connect.HealthConnectManager
*/
public static final String HEALTHCONNECT_SERVICE = "healthconnect";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.credentials.CredentialManager} to authenticate a user to your app.
*
* @see #getSystemService(String)
* @see CredentialManager
*/
public static final String CREDENTIAL_SERVICE = "credential";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.devicelock.DeviceLockManager}.
*
* @see #getSystemService(String)
*/
public static final String DEVICE_LOCK_SERVICE = "device_lock";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.system.virtualmachine.VirtualMachineManager}.
*
* <p>On devices without {@link PackageManager#FEATURE_VIRTUALIZATION_FRAMEWORK} system feature
* the {@link #getSystemService(String)} will return {@code null}.
*
* @see #getSystemService(String)
* @see android.system.virtualmachine.VirtualMachineManager
* @hide
*/
@SystemApi
public static final String VIRTUALIZATION_SERVICE = "virtualization";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link GrammaticalInflectionManager}.
*
* @see #getSystemService(String)
*/
public static final String GRAMMATICAL_INFLECTION_SERVICE = "grammatical_inflection";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.telephony.satellite.SatelliteManager} for accessing satellite functionality.
*
* @see #getSystemService(String)
* @see android.telephony.satellite.SatelliteManager
* @hide
*/
public static final String SATELLITE_SERVICE = "satellite";
/**
* Use with {@link #getSystemService(String)} to retrieve a
* {@link android.net.wifi.sharedconnectivity.app.SharedConnectivityManager} for accessing
* shared connectivity services.
*
* @see #getSystemService(String)
* @see android.net.wifi.sharedconnectivity.app.SharedConnectivityManager
* @hide
*/
@SystemApi
public static final String SHARED_CONNECTIVITY_SERVICE = "shared_connectivity";