# SecondarySession

# SecondarySession

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/com/google/ambient/crossdevice/sessions/SecondarySession "View this page in Java")

<br />

```
@RequiresApi(value = 26) interface SecondarySession
```

<br />

*** ** * ** ***

When a Session becomes shared with one or more devices, this interface represents a secondary device (a device that has joined an existing Session).

## Summary

|                                                                                                                                                                                                                                                                          ### Public functions                                                                                                                                                                                                                                                                           ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `suspend `[Unit](https://developer.android.com/reference/kotlin/kotlin/Unit)                                                                                                                      | [destroySecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession#destroySecondarySession())`()` Destroys the[SecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession).                                                            |
| [ListenableFuture](https://developer.android.com/reference/kotlin/com/google/common/util/concurrent/ListenableFuture)`<`[Void](https://developer.android.com/reference/kotlin/java/lang/Void)`?>` | [destroySecondarySessionFuture](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession#destroySecondarySessionFuture())`()` Java-compatible version of[destroySecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession#destroySecondarySession()). |
| [SessionRemoteConnection](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SessionRemoteConnection)                                                         | [getDefaultRemoteConnection](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession#getDefaultRemoteConnection())`()` Gets communication channel to send messages to the primary of the Sessions.                                                                                                                   |

|                                                                                                                                                                                                                                          ### Public properties                                                                                                                                                                                                                                          ||
|---------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [SessionId](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SessionId) | [sessionId](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession#sessionId()) [SessionId](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SessionId)this[SecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession)belongs to. |

## Public functions

### destroySecondarySession

```
suspend fun destroySecondarySession(): Unit
```

Destroys the[SecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession).

When a[SecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession)is destroyed, the connection with the Primary is terminated and this participant will leave the underlying Session.  

|                                                                                                                                                                                           Throws                                                                                                                                                                                           ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|
| `com.google.ambient.crossdevice.sessions.SessionException: `[com.google.ambient.crossdevice.sessions.SessionException](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SessionException) | if the[SecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession)object is no long valid. |

### destroySecondarySessionFuture

```
fun destroySecondarySessionFuture(): ListenableFuture<Void?>
```

Java-compatible version of[destroySecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession#destroySecondarySession()).  

### getDefaultRemoteConnection

```
fun getDefaultRemoteConnection(): SessionRemoteConnection
```

Gets communication channel to send messages to the primary of the Sessions.  

|                                                                                                                                                                                           Throws                                                                                                                                                                                           ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|
| `com.google.ambient.crossdevice.sessions.SessionException: `[com.google.ambient.crossdevice.sessions.SessionException](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SessionException) | if the[SecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession)object is no long valid. |

## Public properties

### sessionId

```
val sessionId: SessionId
```

[SessionId](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SessionId)this[SecondarySession](https://developer.android.com/reference/kotlin/com/google/ambient/crossdevice/sessions/SecondarySession)belongs to.