PrivKitPlatform class abstract

The interface that implementations of priv_kit must implement.

Platform implementations should extend this class rather than implement it, so new methods added here do not break existing implementations.

Inheritance
  • Object
  • PlatformInterface
  • PrivKitPlatform
Implementers

Constructors

PrivKitPlatform()
Constructs a PrivKitPlatform.

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
serverState Stream<PrivServerInfo?>
Process-wide connection state of the Privileged Server.
no setter
startupLog Stream<PrivStartupLogLine>
Diagnostic lines emitted while a start operation is running.
no setter

Methods

adbCheckPairing({String? adbDeviceName, int? port, int? portDiscoveryTimeoutMillis}) Future<PrivAdbPairingCheckResult>
One-shot check of whether this app's ADB key is already authorized.
adbCheckPairingSession(int sessionId) Future<PrivAdbPairingCheckResult>
Runs one check on a session opened by adbOpenPairingCheckSession.
adbCheckTcpAuthorization({String? adbDeviceName, int? tcpPort}) Future<PrivAdbAuthorizationCheckResult>
One-shot authorization check against the static TCP port.
adbCheckTcpAuthorizationSession(int sessionId) Future<PrivAdbAuthorizationCheckResult>
Runs one check on a session opened by adbOpenTcpAuthorizationCheckSession.
adbDiscoverConnectPort({String? adbDeviceName, int? timeoutMillis}) Future<int>
Discovers the Wireless Debugging connect port.
adbDiscoverPairingPort({String? adbDeviceName, int? timeoutMillis}) Future<int>
Discovers the Wireless Debugging pairing port.
adbGetActiveTcpPort({String? adbDeviceName}) Future<int?>
The static ADB port adbd is currently listening on, if any.
adbGetConfiguredTcpPort({String? adbDeviceName}) Future<int?>
The static ADB port previously configured by this app, if any.
adbGetIdentityInfo({String? adbDeviceName}) Future<PrivAdbIdentityInfo>
ADB identity of this app, including its public key fingerprint.
adbGetWirelessDebuggingControlStatus({String? adbDeviceName}) Future<PrivAdbWirelessDebuggingControlStatus>
Whether Priv Kit can manage Wireless Debugging on this device.
adbOpenPairingCheckSession({String? adbDeviceName, int? port, int? portDiscoveryTimeoutMillis}) Future<int>
Opens a persistent pairing check session and returns its handle.
adbOpenTcpAuthorizationCheckSession({String? adbDeviceName, int? tcpPort}) Future<int>
Opens a persistent TCP authorization check session, returns its handle.
adbPair({required String pairingCode, String? adbDeviceName, int? port, int? portDiscoveryTimeoutMillis}) Future<PrivAdbPairingResult>
Pairs this app's ADB key with a six digit Wireless Debugging code.
adbPrepareTcpForStart({String? adbDeviceName, int? tcpPort}) Future<PrivAdbAuthorizationCheckResult>
Checks and, when possible, restores the static TCP port before a start.
adbRequestTcpAuthorization({String? adbDeviceName, int? tcpPort, int? timeoutMillis}) Future<PrivAdbAuthorizationRequestResult>
Requests authorization on the static TCP port and waits for the user.
adbRestartTcp({String? adbDeviceName, int? tcpPort, PrivAdbConnectionOptions? options}) Future<PrivAdbTcpResult>
Restarts the static ADB port.
adbStopTcp({String? adbDeviceName, int? tcpPort, PrivAdbConnectionOptions? options}) Future<PrivAdbTcpResult>
Stops the static ADB port.
adbSwitchToTcp({String? adbDeviceName, int? tcpPort, PrivAdbConnectionOptions? options}) Future<PrivAdbTcpResult>
Switches adbd to TCP/IP mode on tcpPort (adb tcpip).
cancelCommand(String commandId) Future<void>
Cancels a running command and releases its resources.
cancelOperation(String operationId) Future<void>
Cancels a start operation previously launched with operationId.
checkServerPermission(String permission) Future<int>
Checks one permission against the connected server.
closeSession(int sessionId) Future<void>
Closes a session opened by adbOpenPairingCheckSession or adbOpenTcpAuthorizationCheckSession.
commandEvents(String commandId) Stream<PrivCommandEvent>
Events of the command previously started with startCommand.
connectReadyServer() Future<PrivServerInfo?>
Connects a server that has already announced itself, if any.
externalStartupRunInCurrentProcess({required String commandLine, PrivExternalStartupOptions? options}) Future<String>
Runs commandLine through /system/bin/sh in this app's own process.
externalStartupRunThroughBridge({required String commandLine, required String bridgeId, PrivExternalStartupBridgeOptions? options}) Future<String>
Runs commandLine through an app-registered external startup bridge.
getDeniedServerPermissions() Future<List<String>>
Permissions declared for the server's packages but denied to its process.
getNativeStarterCommand() Future<String>
The device-side shell command that starts the native starter.
getServerInfo() Future<PrivServerInfo>
The connected server. Throws when no server is connected.
getServerState() Future<PrivServerInfo?>
The currently connected server, or null.
isPermissionRestricted() Future<bool>
Whether the connected server cannot grant runtime permissions.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
pingServer() Future<bool>
Pings the server Binder, clearing the connection when it is dead.
prepareOwnerRestart({required int passiveReconnectTimeoutMillis}) Future<void>
Tells the connected server that this owner process is about to restart.
runCommand(PrivCommand command, {int? timeoutMillis, int? maxBytesPerStream}) Future<PrivCommandResult>
Starts command and drains both streams to completion.
shutdownServer() Future<void>
Shuts the connected server down and clears the local connection.
startAdb({PrivAdbConnectionOptions? options, int? timeoutMillis, String? adbDeviceName, String? operationId}) Future<PrivServerInfo>
Starts the Privileged Server through ADB.
startCommand(String commandId, PrivCommand command, {int? timeoutMillis}) Future<void>
Starts command for streaming consumption and keeps it under commandId.
startRoot({int? timeoutMillis, String? operationId}) Future<PrivServerInfo>
Starts the Privileged Server through su.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

instance PrivKitPlatform
The default instance of PrivKitPlatform to use.
getter/setter pair