Kotlin

通話を終了する

通話は、2人のうちどちらか一方が終了させることができる:

  • を呼び出すことで、アプリケーションを起動することができます。 hangup メソッドを call インスタンス
  • 物理的なデバイスに電話を切ることで

通話相手が電話を切ったときに通話を終了する

通話を終了する(電話を切る)には、進行中の通話オブジェクトへの参照を保存する必要があります。追加 onGoingCallID プロパティの先頭にある MainActivity:

現在進行中のコール・リファレンスを onGoingCallID プロパティを追加する。 setOnRTCHangupListener 通話終了を通知します。

の中で MainActivity の本文を更新する。 onCreate メソッドの末尾に以下のリスナーを追加する。

の中で MainActivity の本文を更新する。 startCall メソッドを使用してください。必ず PHONE_NUMBER に、実際に電話をかけたい電話番号を入力してください。 E.164 のような形式(例えば、447700900000):

@SuppressLint("MissingPermission")
fun startCall() {
    client.serverCall(mapOf("to" to "PHONE_NUMBER")) {
        err, outboundCall ->
        when {
            err != null -> {
                connectionStatusTextView.text = err.localizedMessage
            }
            else -> {
                onGoingCallID = outboundCall
                startCallButton.visibility = View.INVISIBLE
                endCallButton.visibility = View.VISIBLE
            }
        }
    }
}

通話が終了すると(通話アプリと着信側のどちらが通話を終了したかに関係なく)、UIは現在の通話状態を反映するように更新される(make a call button が表示され END CALL ボタンは非表示)。

アプリケーションでの通話終了

の中で MainActivity の本文を埋める。 hangup メソッドを使用する:

ハングアップに成功した後、次の値が設定されることに注意。 onGoingCallID プロパティをnullに戻す。

ビルド&ラン

を押す。 Ctrl + R キーでアプリをビルドして実行します。UIの変更を確認するために、通話を開始したり終了したりします。