servicemanager

package
v0.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 22, 2026 License: CC0-1.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
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 Options

type Options []Option

Options is a slice of Option.

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"
	SharedConnectivityService         ServiceName = "shared_connectivity"
	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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL