Skip to content
sstreamzet/docs
Android SDK 0.2.0-rc.3Open console
Developer docs / Android SDK
API and integration guide · Updated 2026-09-23

Android states and errors

Every public state field and enum value. Branch on machine codes; display the localized message.

DeviceRegistration

Field / APIType / defaultContract
deviceIdString · requiredServer device UUID; display/log identifier, not a secret.
deviceCodeString · requiredCode for dashboard pairing; available after registration. Do not infer format or validity from length.

SupportState

Field / APIType / defaultContract
phaseSupportPhase · IDLELifecycle phase; enum values are listed below.
deviceDeviceRegistration? · nullRegistration snapshot. May remain populated after stop/error; not online status.
controlAvailableBoolean · falseAccessibility service availability at the state update.
stopReasonStopReason? · nullReason for the latest stop transition, otherwise null.
errorSupportError? · nullSanitized error category, otherwise null. Never contains raw HTTP/token/SDP.
isActiveBoolean · computedtrue in AWAITING_CONSENT, STARTING, WAITING_FOR_OPERATOR, CONNECTING, CONNECTED, RECONNECTING, STOPPING. REGISTERING is false.

SupportUiState

Field / APIType / defaultContract
supportSupportState · requiredUnderlying state; control availability is refreshed by the launcher.
messageString · requiredDisplay-ready status or preparation error in en/ko/ja. Do not parse this text for logic.
isPreparingBoolean · requiredRegistration/disclosure/permission preparation is in progress.
preparationErrorSupportPreparationError? · requirednull normally; recoverable failure opening settings/consent UI. A later start can retry.
canStartBoolean · requiredNo preparation, active session or registration. start() additionally checks Activity RESUMED.
canStopBoolean · requiredPreparation, registration or an active support phase can be stopped.
deviceCodeString? · computedsupport.device?.deviceCode; null before registration.
controlAvailableBoolean · computedAlias for support.controlAvailable.

SupportPhase

Field / APIType / defaultContract
IDLEenumInitialized, no active request.
REGISTERINGenumRegistering/authenticating the installation.
READYenumRegistered; no sharing consent yet.
AWAITING_CONSENTenumAndroid capture consent is pending.
STARTINGenumForeground capture service starting.
WAITING_FOR_OPERATORenumApproved sharing is waiting for an operator.
CONNECTINGenumPeer negotiation in progress.
CONNECTEDenumAuthenticated peer connected.
RECONNECTINGenumConnection recovery in progress; consent is retained.
STOPPINGenumExplicit shutdown in progress.
STOPPEDenumSharing has stopped; inspect stopReason.
ERRORenumFailure; inspect error and optionally stopReason.

StopReason

Field / APIType / defaultContract
USERenumHost/person stopped support.
OPERATORenumRemote operator ended support.
SYSTEMenumAndroid revoked capture or stopped service.
TIMEOUTenumConfigured session lifetime expired.
PERMISSION_DENIEDenumCapture consent denied/invalid or Activity unavailable.
ERRORenumFailure stopped support/preparation.

SupportError

Field / APIType / defaultContract
REGISTRATION_FAILEDenumRegistration/auth bootstrap failed; check config and connectivity, then retry.
AUTHENTICATION_FAILEDenumSession/device authentication failed; inspect registration and account access.
NETWORK_UNAVAILABLEenumNetwork failure category; inspect connectivity.
CAPTURE_FAILEDenumScreen capture could not be started/maintained; request fresh consent.
CONNECTION_FAILEDenumPeer connection failure category; inspect signaling/TURN.
SERVICE_START_FAILEDenumAndroid rejected foreground service start; use a visible Activity.

SupportStartResult

Field / APIType / defaultContract
ACCEPTEDenumPreparation accepted; not a connection guarantee.
ALREADY_ACTIVEenumSupport is already active.
BUSYenumPreparation/registration already pending.
HOST_NOT_RESUMEDenumActivity is not RESUMED, is finishing or destroyed.

SupportPreparationError

Field / APIType / defaultContract
SETTINGS_UNAVAILABLEenumCould not launch accessibility settings.
CAPTURE_CONSENT_UNAVAILABLEenumCould not launch Android capture consent.