常见问题

更新时间: 2025/04/09 15:12:05

本文介绍网易云信 NERoom 的常见问题。

修改角色的权限后是否会立即生效

网易云信控制台 修改角色权限后,对已经创建的房间不生效,只对新创建的房间生效。

如何处理登录频繁失败问题

问题描述

App 在后台,或者退出 App 后,登录频繁失败的场景。

问题报错信息

2024-04-11 11:44:22.411[I][RoomKit][RetrofitService][9348]:--> POST https://roomkit-sg.yunxinapi.com/scene/apps/b825606204d1dd1042ed601d2900bce6/v1/login (0-byte body)
2024-04-11 11:44:22.439[I][RoomKit][RetrofitService][9348]:<-- HTTP FAILED: java.net.UnknownHostException: Unable to resolve host "roomkit-sg.yunxinapi.com": No address associated with hostname
2024-04-11 11:44:22.485[E][RoomKit][AuthService][9021]:fetch account info error

解决方案

检查 Application 中是否直接进行了 NERoom 的初始化和登录操作。若是,请在 MainActivity 中进行登录操作。

如何使用会议网络状态检测

问题描述

移动端在网易会议前或者会议中如何检测网络状态?

实现方法

  • 会议前检测网络状态。

    1. 调用 NEPreviewRoomContext.addPreviewRoomListener 方法添加预览房间事件的监听。

    2. 调用 NEPreviewRoomRtcController.startLastmileProbeTest 方法开始通话前网络质量探测。

      调用该方法成功后,SDK 会通过回调方式反馈上下行网络的质量状态与质量探测报告,包括带宽、丢包率、网络抖动和往返时延等数据。

      • 回调中的 onLastmileQuality 表示网络质量状态,以打分形式描述上下行网络质量的主观体验。该回调视网络情况在约 5 秒内返回。
      • 回调中的 onLastmileProbeResult 表示网络质量探测报告,报告中通过客观数据反馈上下行网络质量。该回调视网络情况在约 30 秒内返回。
  • 会议中检测网络状态。

    调用 onRtcStats 方法添加当前通话统计数据的监听。

    调用该方法成功后,SDK 定期向 App 报告当前通话的统计信息,每 2 秒触发一次。

    回调中的 onRtcStats 表示当前通话的统计信息,具体各项指标请参考 NERoomRtcStats

如何解决启动时崩溃问题

问题描述

应用启动时崩溃,并出现类似下图的日志:

neroomfaq

问题原因

引入的 IM 相关的依赖版本不一致。

解决方法

  1. 通过执行以下命令打印依赖树。

    Windows
    gradlew.bat :app:dependencies > dependencies.txt
    
    macOS
    ./gradlew :app:dependencies > dependencies.txt
    
  2. 查看依赖树中的所有以 com.netease.nimlib:* 开头的依赖版本是否一致,例如:

    Groovycom.netease.nimlib:basesdk:10.5.0
    com.netease.nimlib:chatroom:10.6.0
    

    其中的 10.5.0 和 10.6.0 不一致就会导致崩溃。可以将所有的版本指定为一致,或者在 App 下的 build.grade 中添加强制指定。示例如下:

    Groovy
    Groovyconfigurations.all {
        resolutionStrategy {
            force 'com.netease.nimlib:basesdk:10.6.0'
            force 'com.netease.nimlib:chatroom:10.6.0'
            force 'com.netease.nimlib:push:10.6.0'
            force 'com.netease.nimlib:avsignalling:10.6.0'
            force 'com.netease.nimlib:qchat:10.6.0'
            force 'com.netease.nimlib:superteam:10.6.0'
            force 'com.netease.nimlib:lucene:10.6.0'
        }
    }
    
    Kotlin
    Kotlinconfigurations.all {
        resolutionStrategy {
            force("com.netease.nimlib:basesdk:10.6.0")
            force("com.netease.nimlib:chatroom:10.6.0")
            force("com.netease.nimlib:push:10.6.0")
            force("com.netease.nimlib:avsignalling:10.6.0")
            force("com.netease.nimlib:qchat:10.6.0")
            force("com.netease.nimlib:superteam:10.6.0")
            force("com.netease.nimlib:lucene:10.6.0")
        }
    }
    
此文档是否对你有帮助?
有帮助
去反馈
  • 修改角色的权限后是否会立即生效
  • 如何处理登录频繁失败问题
  • 如何使用会议网络状态检测
  • 如何解决启动时崩溃问题