Tips

This page has not been translated yet.

このセクションでは、SkyWay Android SDK を利用して Android アプリケーションを開発する時に参考となる Tips を掲載しています。

Experimental API

Android SDK の一部の機能は Experimental API として提供しています。 この API はサポートの対象外であり、今後短期間のうちに仕様が変更される可能性があります。 Experimental API を利用する場合はコードに OptIn アノテーションを記述する必要があります。

以下に Experimental API である AudioSource.changeRecord(audioRecord: AudioRecord) を利用する例を示します。

@OptIn(SkyWayOptIn::class) fun changeAudioSource(audioRecord: AudioRecord) { AudioSource.changeRecord(audioRecord) }

Pluginの使い方

Core ライブラリでは Plugin を使って追加の機能を利用できます。 以下に SFUBotPlugin を利用する例を示します。

SkyWayContext.registerPlugin(SFUBotPlugin()) val option = SkyWayContext.Options(authToken) SkyWayContext.setup(context, option)

SDKのログレベルを変更する

SDK から出力されるログレベルを変更するには、SkyWayContext.OptionslogLevel を変更します。 設定可能なログレベルと説明については、Android SDK リファレンスを参照してください。

以下にログレベルを VERBOSE に設定する例を示します。

val option = SkyWayContext.Options(authToken, logLevel = Logger.LogLevel.VERBOSE) SkyWayContext.setup(context, option)

アプリケーション開発時は、不具合の調査やサポートとのやり取りを円滑に行うために、ログレベルを VERBOSE に設定することをおすすめします。

WebRTCに関するログを表示する

WebRTC 通信による詳細なログを出力するには、SkyWayContext.OptionswebRTCLogtrue に変更します。 以下に例を示します。

val option = SkyWayContext.Options(authToken, webRTCLog = true) SkyWayContext.setup(context, option)

SkyWayのログを取得する

Logger.onLogHandlerにハンドラを登録することで、SkyWay内部のログを取得することができます。

以下に例を示します。

Logger.onLogHandler = { logLevel: Logger.LogLevel, s: String -> Log.d("skyway-log", "$logLevel $s") }