Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
skydoves committed Aug 25, 2023
2 parents 06aaf50 + 06b0ce5 commit 5428fcc
Show file tree
Hide file tree
Showing 11 changed files with 32 additions and 21 deletions.
24 changes: 24 additions & 0 deletions docusaurus/docs/Android/07-playground/02-stream-api-key.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
title: Stream API Key
description: How to get your Stream API Key
---

The Stream API Key is a critical credential that empowers you to construct your own Chat/Video features for your services. To obtain the Stream API Key, you can follow the steps outlined below:

1. Go to the **[Stream login page](https://getstream.io/try-for-free)**.

2. If you have a GitHub account, **simply click the "Continue with GitHub" button**, and you'll be able to complete the registration in just a matter of seconds. This process takes around 30 seconds and doesn't require you to complete any forms.

![Registration](../assets/stream-registration.png)

3. **Go to the [Dashboard](https://dashboard.getstream.io) and click the Create App** button like the below.

4. Fill in the blanks like the below and click the **Create App** button.

![Create New App](../assets/dashboard-create-new-app.png)

5. You will find the **Key** displayed as shown in the image below; make sure to take note of it for future reference.

![API Key](../assets/dashboard-api-key.png)

Your Stream account setup is completed! Now, build your own video calling, audio room, and livestream application 🚀
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion dogfooding/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ android {
buildConfigField("Boolean", "BENCHMARK", "false")
}
getByName("release") {
isMinifyEnabled = false
isMinifyEnabled = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
Expand Down
7 changes: 6 additions & 1 deletion stream-video-android-core/consumer-proguard-rules.pro
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
## Stream Video Android Core Proguard Rules

# Wire protocol buffer model classes
-keep class stream.video.sfu.** { *; }

-keep class com.squareup.moshi.JsonReader
-keep class com.squareup.moshi.JsonAdapter
-keep class kotlin.reflect.jvm.internal.* { *; }
-keep class kotlin.reflect.jvm.internal.* { *; }

## Moshi model classes
-keep class org.openapitools.client.** { *; }
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,7 @@ import io.getstream.video.android.core.utils.mapState
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.launch
import kotlinx.coroutines.runBlocking
import org.openapitools.client.models.AudioSettings
import org.openapitools.client.models.VideoSettings
import org.webrtc.Camera2Capturer
import org.webrtc.Camera2Enumerator
Expand Down Expand Up @@ -81,7 +79,7 @@ class SpeakerManager(

val devices: StateFlow<List<StreamAudioDevice>> = microphoneManager.devices

private val _speakerPhoneEnabled = MutableStateFlow(false)
private val _speakerPhoneEnabled = MutableStateFlow(true)
val speakerPhoneEnabled: StateFlow<Boolean> = _speakerPhoneEnabled

internal var selectedBeforeSpeaker: StreamAudioDevice? = null
Expand Down Expand Up @@ -620,22 +618,6 @@ class MediaManagerImpl(
internal val microphone = MicrophoneManager(this, preferSpeakerphone = true)
internal val speaker = SpeakerManager(this, microphone)

init {
// listen to audio configuration changes
scope.launch {
call.state.settings.collect { settingsResponse ->
settingsResponse?.let {
// The default is Speaker - so we only switch if Earpiece is set in Settings
if (it.audio.defaultDevice == AudioSettings.DefaultDevice.Earpiece &&
!speaker.speakerPhoneEnabled.value
) {
speaker.setSpeakerPhone(false)
}
}
}
}
}

fun cleanup() {
videoSource.dispose()
videoTrack.dispose()
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 comments on commit 5428fcc

Please sign in to comment.