fuchsia_remote_debug_protocol library

Provides an API to test/debug Flutter applications on remote Fuchsia devices and emulators.

The application typically runs in a separate process from the actual test, wherein the user can supply the process with various events to test the behavior of said application.

The API will provide methods to connect to one or more instances of the Dart VM and operate on Isolates and Flutter Views, including affordances to subscribe to creation and destruction of Dart VM instances, Isolates, and Flutter Views. Not all of these features are yet implemented, as this library is a work in progress.

Classes

DartVm
Handles JSON RPC-2 communication with a Dart VM service. [...]
FlutterView
Represents an instance of a Flutter view running on a Fuchsia device.
FuchsiaRemoteConnection
Manages a remote connection to a Fuchsia Device. [...]
PortForwarder
Defines an interface for port forwarding. [...]
SshCommandRunner
Runs commands remotely on a Fuchsia device. [...]

Properties

fuchsiaPortForwardingFunction PortForwardingFunction
The function for forwarding the local machine's ports to a remote Fuchsia device. [...]
read / write
fuchsiaVmServiceConnectionFunction RpcPeerConnectionFunction
DartVm uses this function to connect to the Dart VM on Fuchsia. [...]
read / write

Functions

isIpV4Address(String address) bool
Returns true if address is a valid IPv4 address.
isIpV6Address(String address) bool
Returns true if address is a valid IPv6 address.
restoreFuchsiaPortForwardingFunction() → void
Sets fuchsiaPortForwardingFunction back to the default SSH port forwarding implementation.
restoreVmServiceConnectionFunction() → void
Restores the VM service connection function to the default implementation.
validateAddress(String address) → void
Determines whether address is a valid IPv6 or IPv4 address. [...]

Typedefs

PortForwardingFunction(String address, int remotePort, [ String interface, String configFile ]) Future<PortForwarder>
A function for forwarding ports on the local machine to a remote device. [...]
RpcPeerConnectionFunction(Uri uri) Future<Peer>
Signature of an asynchronous function for astablishing a JSON RPC-2 connection to a Uri.

Exceptions / Errors

RpcFormatError
An error raised when a malformed RPC response is received from the Dart VM. [...]
SshCommandError
An error raised when a command fails to run within the SshCommandRunner. [...]