Documentation
¶
Index ¶
- Variables
- type Option
- type Options
- type ServiceManager
- func (sm *ServiceManager) AddService(ctx context.Context, name ServiceName, service binder.TransactionReceiver, ...) (_err error)
- func (sm *ServiceManager) CheckService(ctx context.Context, name ServiceName) (_binder binder.IBinder, _err error)
- func (sm *ServiceManager) GetService(ctx context.Context, name ServiceName) (_binder binder.IBinder, _err error)
- func (sm *ServiceManager) IsDeclared(ctx context.Context, name ServiceName) (_declared bool, _err error)
- func (sm *ServiceManager) ListServices(ctx context.Context) (_services []ServiceName, _err error)
- type ServiceName
Constants ¶
This section is empty.
Variables ¶
var ErrNotProxyBinder = errors.New("servicemanager: remote is not a *binder.ProxyBinder")
ErrNotProxyBinder is returned when the ServiceManager's remote IBinder is not a *binder.ProxyBinder, which prevents extracting the transport.
Functions ¶
This section is empty.
Types ¶
type Option ¶
type Option interface {
// contains filtered or unexported methods
}
Option configures a ServiceManager.
func OptionIdentity ¶
func OptionIdentity(identity binder.CallerIdentity) Option
OptionIdentity sets the caller identity used when creating ProxyBinder instances for resolved services.
type ServiceManager ¶
type ServiceManager struct {
// contains filtered or unexported fields
}
ServiceManager provides access to Android's ServiceManager via Binder IPC.
func New ¶
func New( transport binder.VersionAwareTransport, opts ...Option, ) *ServiceManager
New creates a ServiceManager client using the given transport.
func (*ServiceManager) AddService ¶
func (sm *ServiceManager) AddService( ctx context.Context, name ServiceName, service binder.TransactionReceiver, allowIsolated bool, dumpPriority int32, ) (_err error)
AddService publishes a Go service under the given name so that other processes can discover it via GetService/CheckService.
func (*ServiceManager) CheckService ¶
func (sm *ServiceManager) CheckService( ctx context.Context, name ServiceName, ) (_binder binder.IBinder, _err error)
CheckService checks if a service is registered without blocking. Returns nil, nil if the service is not found.
func (*ServiceManager) GetService ¶
func (sm *ServiceManager) GetService( ctx context.Context, name ServiceName, ) (_binder binder.IBinder, _err error)
GetService retrieves a service by name. Blocks until the service is available.
func (*ServiceManager) IsDeclared ¶
func (sm *ServiceManager) IsDeclared( ctx context.Context, name ServiceName, ) (_declared bool, _err error)
IsDeclared checks whether a service is declared in the VINTF manifest.
func (*ServiceManager) ListServices ¶
func (sm *ServiceManager) ListServices( ctx context.Context, ) (_services []ServiceName, _err error)
ListServices returns the names of all registered services.
type ServiceName ¶
type ServiceName string
ServiceName identifies an Android system service by its registered name.
const ( AccessibilityService ServiceName = "accessibility" AccountService ServiceName = "account" ActivityService ServiceName = "activity" ActivityTaskService ServiceName = "activity_task" AdbService ServiceName = "adb" AlarmService ServiceName = "alarm" AmbientContextService ServiceName = "ambient_context" AppBindingService ServiceName = "app_binding" AppHibernationService ServiceName = "app_hibernation" AppIntegrityService ServiceName = "app_integrity" AppOpsService ServiceName = "appops" AppPredictionService ServiceName = "app_prediction" AppSearchService ServiceName = "app_search" AppwidgetService ServiceName = "appwidget" AttentionService ServiceName = "attention" AttestationVerificationService ServiceName = "attestation_verification" AudioDeviceVolumeService ServiceName = "audio_device_volume" AudioService ServiceName = "audio" AuthService ServiceName = "auth" AutofillManagerService ServiceName = "autofill" BackgroundInstallControlService ServiceName = "background_install_control" BackupService ServiceName = "backup" BatteryService ServiceName = "batterymanager" BatteryStatsService ServiceName = "batterystats" BinaryTransparencyService ServiceName = "transparency" BiometricService ServiceName = "biometric" BlobStoreService ServiceName = "blob_store" BluetoothService ServiceName = "bluetooth" BugreportService ServiceName = "bugreport" CameraService ServiceName = "camera" CaptioningService ServiceName = "captioning" CarrierConfigService ServiceName = "carrier_config" ClipboardService ServiceName = "clipboard" CloudsearchService ServiceName = "cloudsearch" ColorDisplayService ServiceName = "color_display" CompanionDeviceService ServiceName = "companiondevice" ConnectivityDiagnosticsService ServiceName = "connectivity_diagnostics" ConnectivityService ServiceName = "connectivity" ConsumerIrService ServiceName = "consumer_ir" ContactKeysService ServiceName = "contact_keys" ContentCaptureManagerService ServiceName = "content_capture" ContentSuggestionsService ServiceName = "content_suggestions" ContexthubService ServiceName = "contexthub" CredentialService ServiceName = "credential" CrossProfileAppsService ServiceName = "crossprofileapps" DataLoaderManagerService ServiceName = "dataloader_manager" DeviceIdentifiersService ServiceName = "device_identifiers" DeviceLockService ServiceName = "device_lock" DevicePolicyService ServiceName = "device_policy" DeviceStateService ServiceName = "device_state" DisplayHashService ServiceName = "display_hash" DisplayService ServiceName = "display" DomainVerificationService ServiceName = "domain_verification" DownloadService ServiceName = "download" DreamService ServiceName = "dream" DropboxService ServiceName = "dropbox" DynamicSystemService ServiceName = "dynamic_system" EcmEnhancedConfirmationService ServiceName = "ecm_enhanced_confirmation" EthernetService ServiceName = "ethernet" EuiccCardService ServiceName = "euicc_card" EuiccService ServiceName = "euicc" FaceService ServiceName = "face" FeatureFlagsService ServiceName = "feature_flags" FileIntegrityService ServiceName = "file_integrity" FingerprintService ServiceName = "fingerprint" FontService ServiceName = "font" GameService ServiceName = "game" GatekeeperService ServiceName = "android.service.gatekeeper.IGateKeeperService" GrammaticalInflectionService ServiceName = "grammatical_inflection" HardwarePropertiesService ServiceName = "hardware_properties" HdmiControlService ServiceName = "hdmi_control" HealthconnectService ServiceName = "healthconnect" IdmapService ServiceName = "idmap" IncidentCompanionService ServiceName = "incidentcompanion" IncidentService ServiceName = "incident" IncrementalService ServiceName = "incremental" InputMethodService ServiceName = "input_method" InputService ServiceName = "input" IpsecService ServiceName = "ipsec" IrisService ServiceName = "iris" JobSchedulerService ServiceName = "jobscheduler" KeyguardService ServiceName = "keyguard" LauncherAppsService ServiceName = "launcherapps" LayoutInflaterService ServiceName = "layout_inflater" LegacyPermissionService ServiceName = "legacy_permission" LightsService ServiceName = "lights" LocaleService ServiceName = "locale" LocationService ServiceName = "location" LowpanService ServiceName = "lowpan" MediaCommunicationService ServiceName = "media_communication" MediaMetricsService ServiceName = "media_metrics" MediaProjectionService ServiceName = "media_projection" MediaRouterService ServiceName = "media_router" MediaSessionService ServiceName = "media_session" MediaTranscodingService ServiceName = "media_transcoding" MidiService ServiceName = "midi" MmsService ServiceName = "mms" MusicRecognitionService ServiceName = "music_recognition" NearbyService ServiceName = "nearby" NetdService ServiceName = "netd" NetworkPolicyService ServiceName = "netpolicy" NetworkScoreService ServiceName = "network_score" NetworkStackService ServiceName = "network_stack" NetworkStatsService ServiceName = "netstats" NetworkWatchlistService ServiceName = "network_watchlist" NetworkmanagementService ServiceName = "network_management" NfcService ServiceName = "nfc" NotificationService ServiceName = "notification" NsdService ServiceName = "servicediscovery" OemLockService ServiceName = "oem_lock" OnDeviceIntelligenceService ServiceName = "on_device_intelligence" OverlayService ServiceName = "overlay" PacProxyService ServiceName = "pac_proxy" PeopleService ServiceName = "people" PerformanceHintService ServiceName = "performance_hint" PermissionCheckerService ServiceName = "permission_checker" PermissionControllerService ServiceName = "permission_controller" PermissionEnforcerService ServiceName = "permission_enforcer" PermissionService ServiceName = "permission" PersistentDataBlockService ServiceName = "persistent_data_block" PlatformCompatNativeService ServiceName = "platform_compat_native" PlatformCompatService ServiceName = "platform_compat" PowerExemptionService ServiceName = "power_exemption" PowerService ServiceName = "power" PowerStatsService ServiceName = "powerstats" PrintService ServiceName = "print" ProfilingService ServiceName = "profiling" RadioService ServiceName = "broadcastradio" RebootReadinessService ServiceName = "reboot_readiness" RecoveryService ServiceName = "recovery" RemoteAuthService ServiceName = "remote_auth" RemoteProvisioningService ServiceName = "remote_provisioning" ResourceEconomyService ServiceName = "tare" ResourcesService ServiceName = "resources" RestrictionsService ServiceName = "restrictions" RoleService ServiceName = "role" RollbackService ServiceName = "rollback" RotationResolverService ServiceName = "resolver" SafetyCenterService ServiceName = "safety_center" SatelliteService ServiceName = "satellite" SearchService ServiceName = "search" SearchUiService ServiceName = "search_ui" SecureElementService ServiceName = "secure_element" SecurityStateService ServiceName = "security_state" SelectionToolbarService ServiceName = "selection_toolbar" SensitiveContentProtectionService ServiceName = "sensitive_content_protection_service" SensorPrivacyService ServiceName = "sensor_privacy" SensorService ServiceName = "sensor" SerialService ServiceName = "serial" ShortcutService ServiceName = "shortcut" SipService ServiceName = "sip" SliceService ServiceName = "slice" SmartspaceService ServiceName = "smartspace" SmsService ServiceName = "sms" SoundTriggerMiddlewareService ServiceName = "soundtrigger_middleware" SoundTriggerService ServiceName = "soundtrigger" SpeechRecognitionService ServiceName = "speech_recognition" StatsBootstrapAtomService ServiceName = "statsbootstrap" StatsCompanionService ServiceName = "statscompanion" StatsManagerService ServiceName = "statsmanager" StatusBarService ServiceName = "statusbar" StorageService ServiceName = "storage" StorageStatsService ServiceName = "storagestats" SystemConfigService ServiceName = "system_config" SystemHealthService ServiceName = "systemhealth" SystemUpdateService ServiceName = "system_update" TelecomService ServiceName = "telecom" TelephonyImsService ServiceName = "telephony_ims" TelephonyRcsMessageService ServiceName = "ircsmessage" TelephonyRegistryService ServiceName = "telephony_registry" TelephonyService ServiceName = "phone" TelephonySubscriptionService ServiceName = "telephony_subscription_service" TestNetworkService ServiceName = "test_network" TetheringService ServiceName = "tethering" TextClassificationService ServiceName = "textclassification" TextServicesManagerService ServiceName = "textservices" TextToSpeechManagerService ServiceName = "texttospeech" ThermalService ServiceName = "thermalservice" ThreadNetworkService ServiceName = "thread_network" TimeDetectorService ServiceName = "time_detector" TimeManagerService ServiceName = "time_manager" TimeZoneDetectorService ServiceName = "time_zone_detector" TranslationManagerService ServiceName = "translation" TrustService ServiceName = "trust" TvAdService ServiceName = "tv_ad" TvInputService ServiceName = "tv_input" TvInteractiveAppService ServiceName = "tv_interactive_app" TvTunerResourceMgrService ServiceName = "tv_tuner_resource_mgr" UiModeService ServiceName = "uimode" UiTranslationService ServiceName = "ui_translation" UpdateLockService ServiceName = "updatelock" UriGrantsService ServiceName = "uri_grants" UsageStatsService ServiceName = "usagestats" UsbService ServiceName = "usb" UserService ServiceName = "user" UwbService ServiceName = "uwb" VcnManagementService ServiceName = "vcn_management" VibratorManagerService ServiceName = "vibrator_manager" VibratorService ServiceName = "vibrator" VirtualDeviceService ServiceName = "virtualdevice" VirtualizationService ServiceName = "virtualization" VoiceInteractionManagerService ServiceName = "voiceinteraction" VpnManagementService ServiceName = "vpn_management" VrService ServiceName = "vrmanager" WallpaperEffectsGenerationService ServiceName = "wallpaper_effects_generation" WallpaperService ServiceName = "wallpaper" WearableSensingService ServiceName = "wearable_sensing" WebviewUpdateService ServiceName = "webviewupdate" WifiAwareService ServiceName = "wifiaware" WifiNl80211Service ServiceName = "wifinl80211" WifiP2pService ServiceName = "wifip2p" WifiRttRangingService ServiceName = "wifirtt" WifiRttService ServiceName = "rttmanager" WifiScanningService ServiceName = "wifiscanner" WifiService ServiceName = "wifi" WindowService ServiceName = "window" )
Service name constants extracted from android.content.Context.