MethodChannelPrivKit class

An implementation of PrivKitPlatform that uses method channels.

Inheritance

Constructors

MethodChannelPrivKit()

Properties

hashCode → int
The hash code for this object.
no setterinherited
methodChannel → MethodChannel
The method channel used to interact with the native platform.
final
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 setteroverride
serverStateChannel → EventChannel
Event channel carrying Privilege.serverState.
final
startupLog → Stream<PrivStartupLogLine>
Diagnostic lines emitted while a start operation is running.
no setteroverride
startupLogChannel → EventChannel
Event channel carrying startup diagnostics.
final

Methods

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

Operators

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

Constants

commandChannelPrefix → const String
Prefix of the per-command event channels.