OptionaldangerAcceptInvalidCerts?: booleanAllow invalid TLS certificates in the native transport.
This is useful for local debugging setups, but should stay disabled for normal production traffic.
Optionallocation?: MobileDeviceLocationThe coarse position the device knows, when the caller models one. The 450 app sends it on the search results, the 451 app sends none on a device without one; when set it replaces a restored snapshot's position.
Optionalnetwork?: MobileNetworkThe network the device is on (default: cellular LTE for a new device; a
restored snapshot keeps the network it was saved with). Pass
{ kind: 'wifi' } to present the device on Wi-Fi; when set it also
replaces a restored snapshot's network.
OptionalprotocolMode?: TransportProtocolModeProtocol mode of the native transport (default http2: Android goes over
TCP by the owner's decision). http3 is the caller's opt-in to the app's
QUIC path (supported by the transport since 0.9.21); auto is http2 on
this profile.
Optionalproxy?: stringHTTP(S) proxy URL passed to the native transport.
OptionalrequestTimeoutMs?: numberTimeout of every API request in milliseconds (default 60 000). A timed-out request is abandoned, not cancelled: an action may still be carried out by the server, so a retry can duplicate it.
Options of the Android app layer (AndroidApp).
Use
seedfor a fresh deterministic virtual device,snapshotto restore a session exported withExportSnapshot, orcheckpointto continue a checkpointed process — the screen restores then put the process state and the screen stack back over this client.Exactly one stored form, like the launch input:
seed,snapshotandcheckpointare three forms of one slot, so a second one beside the first is a type error rather than a value the build silently resolves in one order. A continued process (acheckpoint) is the very client state the checkpoint carries, so it takes nonetworkorlocationeither: those belong to a launch from a checkpoint (a new process), and the build refuses them with the declaredSnapshotDecodeErrorinstead of building a client every restore then refuses.The snapshot and the checkpoint cross storage, so each is accepted as an object only (owner decision, 2026-10-24: never JSON text — the caller parses what its storage returns), and the checkpoint is
unknownon purpose: the build decodes it itself — text, a damaged value, one of another format or one taken on another platform is the declaredSnapshotDecodeError, never a process that quietly diverges.