ANDROID EMULATOR TRANSPORT
==========================

!!! warning
    Bluetooth support in the Android emulator has recently changed. The older mode, using
    the `android-emulator` transport name with Bumble, while still implemented, is now
    obsolete, and may not be supported by recent versions of the emulator.
    Use the `android-netsim` transport name instead.


!!! note
    This transport requires the `android` extra. See the [Android Platform](../platforms/android.md) page for installation instructions.

The Android "netsim" transport either connects, as a host, to a **Netsim** virtual controller
("host" mode), or acts as a virtual controller itself ("controller" mode) accepting host
connections.

## Moniker
The moniker syntax for an Android Emulator "netsim" transport is: `android-netsim:[<host>:<port>][<options>]`,
where `<options>` is a comma-separated list of `<name>=<value>` pairs.
The `mode` parameter name can specify running as a host or a controller, and `<hostname>:<port>` can specify a host name (or IP address) and TCP port number on which to reach the gRPC server for the emulator (in "host" mode), or to accept gRPC connections (in "controller" mode).
Both the `mode=<host|controller>` and `<hostname>:<port>` parameters are optional (so the moniker `android-netsim` by itself is a valid moniker, which will create a transport in `host` mode, connected to `localhost` on the default gRPC port for the Netsim background process).

!!! example Example
    `android-netsim`
    connect as a host to Netsim on the gRPC port discovered automatically.

!!! example Example
    `android-netsim:_:8555,mode=controller`
    Run as a controller, accepting gRPC connection on port 8555.

!!! example Example
    `android-netsim:localhost:8555`
    connect as a host to Netsim on localhost:8555

!!! example Example
    `android-netsim:localhost:8555`
    connect as a host to Netsim on localhost:8555

!!! example Example
    `android-netsim:name=bumble1234`
    connect as a host to Netsim on the discovered gRPC port, using `bumble1234` as the 
    controller instance name.

