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.


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


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


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. [...]


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

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