【问题标题】:Twilio 'twilio-video-app-android' github app Video Calling app crashes on joining a roomTwilio 'twilio-video-app-android' github 应用程序视频通话应用程序在加入房间时崩溃
【发布时间】:2022-06-13 18:12:35
【问题描述】:

我是 twilio 的新手,我正在开发一个用于视频通话的 andorid 应用程序,我从 github 的 twilio 'twilio-video-app-android' 开始 但是当我点击加入房间时应用程序崩溃了 “在空对象引用上的布尔 com.twilio.video.LocalAudioTrack.isReleased()'” 无法理解为什么它会显示这个异常向您求助,谢谢!

【问题讨论】:

  • 你关注所有setup instructions了吗?您是否更改了应用程序中的任何内容?你能分享错误的整个堆栈跟踪吗?

标签: android twilio twilio-click-to-call twilio-video videocall


【解决方案1】:

我在 video-quickstart-android 示例中看到了同样的致命异常。我注意到:

  • 如果我终止应用,从 IDE 再次运行,尝试加入房间,它会崩溃。
  • 但如果我卸载、重新安装然后运行,则不会崩溃。

这是崩溃的位置:

        room = connect(this, accessToken, roomListener) {
        roomName(roomName)
        /*
         * Add local audio track to connect options to share with participants.
         */
        audioTracks(listOf(localAudioTrack))
        /*
         * Add local video track to connect options to share with participants.
         */
        videoTracks(listOf(localVideoTrack))
        ...

但问题不存在,问题在于轨道的初始化。这些仅在成功授予权限后才实例化,因此如果应用程序已经具有未到达代码路径的所需权限,则不会初始化轨道,并且连接代码会爆炸。将单个代码语句添加到代码中,如下所示在(较小的)快速启动应用程序中为我修复了它:

    /*
     * Check camera and microphone permissions. Also, request for bluetooth
     * permissions for enablement of bluetooth audio routing.
     */
    if (!checkPermissionForCameraAndMicrophone()) {
        Timber.i("Requesting camera and mic permissions")
        requestPermissionForCameraMicrophoneAndBluetooth()
    } else {
        createAudioAndVideoTracks() // <------ **** ADD THIS STATEMENT ****
        audioSwitch.start { audioDevices, audioDevice -> updateAudioDeviceIcon(audioDevice) }
    }

@philnash 我希望快速入门示例能够在急需时更新。它没有使用 AndroidX,依赖于已弃用的 API(例如 PreferenceManager),代码中充斥着 lint 警告,它针对的是 2019 年的 Android 版本等。当样本没有保持最新时,它会产生不必要的痛苦和成本来集成 Twilio Video .

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-14
    • 2021-10-06
    • 2017-03-03
    相关资源
    最近更新 更多