Toggle navigation
Toggle navigation
此项目
正在载入...
Sign in
xuning
/
livekitAndroidXuningTest
转到一个项目
Toggle navigation
项目
群组
代码片段
帮助
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
davidliu
2022-04-22 22:38:40 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Committed by
GitHub
2022-04-22 22:38:40 +0900
Commit
25f2f6d0906479d2a46b409de8336360be7c3131
25f2f6d0
1 parent
a2dc8a00
Logging for WebRTC library (#75)
显示空白字符变更
内嵌
并排对比
正在显示
3 个修改的文件
包含
51 行增加
和
2 行删除
livekit-android-sdk/src/main/java/io/livekit/android/LiveKit.kt
livekit-android-sdk/src/main/java/io/livekit/android/dagger/RTCModule.kt
livekit-android-sdk/src/main/java/io/livekit/android/util/LoggingLevel.kt
livekit-android-sdk/src/main/java/io/livekit/android/LiveKit.kt
查看文件 @
25f2f6d
...
...
@@ -12,6 +12,12 @@ import timber.log.Timber
class LiveKit {
companion object {
/**
* [LoggingLevel] to use for Livekit logs. Set to [LoggingLevel.OFF] to turn off logs.
*
* Defaults to [LoggingLevel.OFF]
*/
@JvmStatic
var loggingLevel: LoggingLevel
get() = LKLog.loggingLevel
set(value) {
...
...
@@ -28,6 +34,14 @@ class LiveKit {
}
}
/**
* Enables logs for the underlying WebRTC sdk logging. Used in conjunction with [loggingLevel].
*
* Note: WebRTC logging is very noisy and should only be used to diagnose native WebRTC issues.
*/
@JvmStatic
var enableWebRTCLogging: Boolean = false
fun create(
appContext: Context,
options: RoomOptions = RoomOptions(),
...
...
livekit-android-sdk/src/main/java/io/livekit/android/dagger/RTCModule.kt
查看文件 @
25f2f6d
...
...
@@ -4,11 +4,14 @@ import android.content.Context
import androidx.annotation.Nullable
import dagger.Module
import dagger.Provides
import io.livekit.android.LiveKit
import io.livekit.android.util.LKLog
import io.livekit.android.util.LoggingLevel
import io.livekit.android.webrtc.SimulcastVideoEncoderFactoryWrapper
import org.webrtc.*
import org.webrtc.audio.AudioDeviceModule
import org.webrtc.audio.JavaAudioDeviceModule
import timber.log.Timber
import javax.inject.Named
import javax.inject.Singleton
...
...
@@ -140,9 +143,25 @@ object RTCModule {
PeerConnectionFactory.initialize(
PeerConnectionFactory.InitializationOptions
.builder(appContext)
.setInjectableLogger({ s, severity, s2 ->
if (!LiveKit.enableWebRTCLogging) {
return@setInjectableLogger
}
val loggingLevel = when (severity) {
Logging.Severity.LS_VERBOSE -> LoggingLevel.VERBOSE
Logging.Severity.LS_INFO -> LoggingLevel.INFO
Logging.Severity.LS_WARNING -> LoggingLevel.WARN
Logging.Severity.LS_ERROR -> LoggingLevel.ERROR
else -> LoggingLevel.OFF
}
LKLog.log(loggingLevel) {
Timber.log(loggingLevel.toAndroidLogPriority(), "$s2: $s")
}
}, Logging.Severity.LS_VERBOSE)
.createInitializationOptions()
)
return PeerConnectionFactory.builder()
.setAudioDeviceModule(audioDeviceModule)
.setVideoEncoderFactory(videoEncoderFactory)
...
...
livekit-android-sdk/src/main/java/io/livekit/android/util/LoggingLevel.kt
查看文件 @
25f2f6d
package io.livekit.android.util
import android.util.Log
enum class LoggingLevel {
VERBOSE,
INFO,
...
...
@@ -6,5 +9,18 @@ enum class LoggingLevel {
WARN,
ERROR,
WTF,
OFF,
OFF;
fun toAndroidLogPriority(): Int {
return when (this) {
VERBOSE -> Log.VERBOSE
INFO -> Log.INFO
DEBUG -> Log.DEBUG
WARN -> Log.WARN
ERROR -> Log.ERROR
WTF -> Log.ERROR
OFF -> 0
}
}
}
...
...
请
注册
或
登录
后发表评论