# LowpanScanner

Summary:[Nested Classes](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#nestedclasses)\|[Methods](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#)  

# LowpanScanner

`
public


class
LowpanScanner
`  
`

extends `[Object](https://developer.android.com/reference/java/lang/Object)`


``


`

|---|------------------------------------------------|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | com.google.android.things.lowpan.LowpanScanner |

<br />

*** ** * ** ***

Class for performing active and passive scans.  
**See also:**

- [createScanner()](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanInterface#createScanner())
- [LowpanBeaconInfo](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanBeaconInfo)
- [LowpanEnergyScanResult](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanEnergyScanResult)

## Summary

|                                                                                                                         ### Nested classes                                                                                                                          ||
|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` class` | [LowpanScanner.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner.Callback) Callback base class for[LowpanScanner](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner). |

|                                                                                                                                                                                                                                                                                         ### Public methods                                                                                                                                                                                                                                                                                         ||
|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` int`  | ` `[getTxPower](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#getTxPower())`() ` Gets the maximum transmit power (in dBm) used for active scanning.                                                                                                                                                                                                                                                                                                                                                                                              |
| ` void` | ` `[setCallback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#setCallback(com.google.android.things.lowpan.LowpanScanner.Callback))`(`[LowpanScanner.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner.Callback)` cb) ` Sets an instance of[LowpanScanner.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner.Callback)to receive events.                                                                                                           |
| ` void` | ` `[setCallback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#setCallback(android.os.Handler, com.google.android.things.lowpan.LowpanScanner.Callback))`(`[Handler](https://developer.android.com/reference/android/os/Handler.html)` handler, `[LowpanScanner.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner.Callback)` cb) ` Sets an instance of[LowpanScanner.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner.Callback)to receive events. |
| ` void` | ` `[setTxPower](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#setTxPower(int))`(int txPower) ` Sets the maximum transmit power (in dBm) to be used for active scanning.                                                                                                                                                                                                                                                                                                                                                                          |
| ` void` | ` `[startEnergyScan](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#startEnergyScan())`() ` Start an energy scan.                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ` void` | ` `[startNetScan](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#startNetScan())`() ` Start a network scan.                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ` void` | ` `[stopEnergyScan](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#stopEnergyScan())`() ` Stop an energy scan currently in progress.                                                                                                                                                                                                                                                                                                                                                                                                              |
| ` void` | ` `[stopNetScan](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#stopNetScan())`() ` Stop a network scan currently in progress.                                                                                                                                                                                                                                                                                                                                                                                                                    |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#)From class` `[java.lang.Object](https://developer.android.com/reference/java/lang/Object)` ` |--------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` `[Object](https://developer.android.com/reference/java/lang/Object)          | ` `[clone](https://developer.android.com/reference/java/lang/Object#clone())`() ` Creates and returns a copy of this object.                                                                                                                                                                                                                                                                                                                                                                      | | ` boolean`                                                                     | ` `[equals](https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object))`(`[Object](https://developer.android.com/reference/java/lang/Object)` obj) ` Indicates whether some other object is "equal to" this one.                                                                                                                                                                                                                                                           | | ` void`                                                                        | ` `[finalize](https://developer.android.com/reference/java/lang/Object#finalize())`() ` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.                                                                                                                                                                                                                                                                          | | ` final `[Class](https://developer.android.com/reference/java/lang/Class)`<?>` | ` `[getClass](https://developer.android.com/reference/java/lang/Object#getClass())`() ` Returns the runtime class of this`Object`.                                                                                                                                                                                                                                                                                                                                                                | | ` int`                                                                         | ` `[hashCode](https://developer.android.com/reference/java/lang/Object#hashCode())`() ` Returns a hash code value for the object.                                                                                                                                                                                                                                                                                                                                                                 | | ` final void`                                                                  | ` `[notify](https://developer.android.com/reference/java/lang/Object#notify())`() ` Wakes up a single thread that is waiting on this object's monitor.                                                                                                                                                                                                                                                                                                                                            | | ` final void`                                                                  | ` `[notifyAll](https://developer.android.com/reference/java/lang/Object#notifyAll())`() ` Wakes up all threads that are waiting on this object's monitor.                                                                                                                                                                                                                                                                                                                                         | | ` `[String](https://developer.android.com/reference/java/lang/String)          | ` `[toString](https://developer.android.com/reference/java/lang/Object#toString())`() ` Returns a string representation of the object.                                                                                                                                                                                                                                                                                                                                                            | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait(long, int))`(long millis, int nanos) ` Causes the current thread to wait until another thread invokes the[notify()](https://developer.android.com/reference/java/lang/Object.html#notify())method or the[notifyAll()](https://developer.android.com/reference/java/lang/Object.html#notifyAll())method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed. | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait(long))`(long millis) ` Causes the current thread to wait until either another thread invokes the[notify()](https://developer.android.com/reference/java/lang/Object.html#notify())method or the[notifyAll()](https://developer.android.com/reference/java/lang/Object.html#notifyAll())method for this object, or a specified amount of time has elapsed.                                                                 | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait())`() ` Causes the current thread to wait until another thread invokes the[notify()](https://developer.android.com/reference/java/lang/Object.html#notify())method or the[notifyAll()](https://developer.android.com/reference/java/lang/Object.html#notifyAll())method for this object.                                                                                                                                  | ||

## Public methods

### getTxPower

```
int getTxPower ()
```

Gets the maximum transmit power (in dBm) used for active scanning.

<br />

|    Returns    ||
|-------|--------|
| `int` | <br /> |

**See also:**

- [setTxPower(int)](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#setTxPower(int))  

### setCallback

```
void setCallback (LowpanScanner.Callback cb)
```

Sets an instance of[LowpanScanner.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner.Callback)to receive events.

<br />

|              Parameters               ||
|------|---------------------------------|
| `cb` | `LowpanScanner.Callback` <br /> |

### setCallback

```
void setCallback (Handler handler, 
                LowpanScanner.Callback cb)
```

Sets an instance of[LowpanScanner.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner.Callback)to receive events.

<br />

|                 Parameters                 ||
|-----------|---------------------------------|
| `handler` | `Handler` <br />                |
| `cb`      | `LowpanScanner.Callback` <br /> |

### setTxPower

```
void setTxPower (int txPower)
```

Sets the maximum transmit power (in dBm) to be used for active scanning.

The actual transmit power used is the lesser of this value and the currently configured maximum transmit power for the interface.

<br />

|       Parameters        ||
|-----------|--------------|
| `txPower` | `int` <br /> |

**See also:**

- [getTxPower()](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#getTxPower())  

### startEnergyScan

```
void startEnergyScan ()
```

Start an energy scan.

This method will return once the scan has started.

<br />

|                                                     Throws                                                     ||
|-------------------------------------------------------------------------------------------------------------|---|
| [LowpanException](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanException) |   |

**See also:**

- [stopEnergyScan()](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#stopEnergyScan())  

### startNetScan

```
void startNetScan ()
```

Start a network scan.

This method will return once the scan has started.

Because performing a network scan will return the hardware addresses of nearby devices, the use of this method requires the permission @{link android.Manifest.permission.ACCESS_COARSE_LOCATION}.

<br />

|                                                     Throws                                                     ||
|-------------------------------------------------------------------------------------------------------------|---|
| [LowpanException](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanException) |   |

**See also:**

- [stopNetScan()](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#stopNetScan())  

### stopEnergyScan

```
void stopEnergyScan ()
```

Stop an energy scan currently in progress.

<br />

**See also:**

- [startEnergyScan()](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#startEnergyScan())  

### stopNetScan

```
void stopNetScan ()
```

Stop a network scan currently in progress.

<br />

**See also:**

- [startNetScan()](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner#startNetScan())  
-

  ## Classes

  - [LowpanBeaconInfo](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanBeaconInfo)
  - [LowpanCredential](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanCredential)
  - [LowpanEnergyScanResult](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanEnergyScanResult)
  - [LowpanIdentity](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanIdentity)
  - [LowpanIdentity.Builder](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanIdentity.Builder)
  - [LowpanInterface](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanInterface)
  - [LowpanInterface.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanInterface.Callback)
  - [LowpanManager](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanManager)
  - [LowpanManager.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanManager.Callback)
  - [LowpanProvisioningParams](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanProvisioningParams)
  - [LowpanProvisioningParams.Builder](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanProvisioningParams.Builder)
  - [LowpanScanner](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner)
  - [LowpanScanner.Callback](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanScanner.Callback)
-

  ## Exceptions

  - [InterfaceDisabledException](https://developer.android.com/reference/com/google/android/things/lowpan/InterfaceDisabledException)
  - [JoinFailedAtAuthException](https://developer.android.com/reference/com/google/android/things/lowpan/JoinFailedAtAuthException)
  - [JoinFailedAtScanException](https://developer.android.com/reference/com/google/android/things/lowpan/JoinFailedAtScanException)
  - [JoinFailedException](https://developer.android.com/reference/com/google/android/things/lowpan/JoinFailedException)
  - [LowpanException](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanException)
  - [LowpanRuntimeException](https://developer.android.com/reference/com/google/android/things/lowpan/LowpanRuntimeException)
  - [NetworkAlreadyExistsException](https://developer.android.com/reference/com/google/android/things/lowpan/NetworkAlreadyExistsException)
  - [OperationCanceledException](https://developer.android.com/reference/com/google/android/things/lowpan/OperationCanceledException)
  - [WrongStateException](https://developer.android.com/reference/com/google/android/things/lowpan/WrongStateException)