已知问题及解决方案

本文整理了您在集成阿里云实时音视频SDK Beta版本时,可能遇到SDK的已知问题、系统问题及相关解决方案。建议您在开始前仔细阅读。如有疑问,请提交工单联系技术人员处理。

Ark-TS问题

  1. 不要使用Map去自动创建对象

    //SDK接口
    public playAudioEffect(soundId: number, filePath: string, config: AliRtcAudioEffectConfig): numbe
    
    //ts用map创建对象
    //由于map对象无法在c++匹配到对象,会导致crash
    this.rtcSdk?.playAudioEffect(1, "test", {
                needPublish: true,
                loopCycles: 0,
                startPosMs: 0,
                publishVolume: 0,
                playoutVolume: 0
              } );
    
    //建议使用方式
    let config = new AliRtcAudioEffectConfig();
    config.needPublish = 0;
    config.loopCycles = 0;
    config.startPosMs = 0;
    config.publishVolume = 0;
    config.playoutVolume = 0;
    this.rtcSdk?.playAudioEffect(1, "test", config);
  2. SDK暴露出来的类型请严格传入

    如:AliRtcAudioEffectConfig的loopCycles是number类型,请勿传入string类型,会导致转换失败,影响业务逻辑。

音频问题

  1. 通话过程中,无法切换扬声器和听筒

    HarmonyOS NEXT系统暂时没有提供用户可以手动切换扬声器和听筒的 API 接口。待后续功能支持后优化。

  2. 反复进出通话过程,可能出现无法播放器声音的情况

    由于HarmonyOS NEXT系统问题,偶尔出现音频播放不出声音情况。遇到这种情况后,先尝试重启手机后再做尝试。

  3. 使用typeC to 3.5mm接口 + 3.5mm三环线的耳机,会触发会议场景音频紊乱

    HarmonyOS NEXT系统在使用typeC to 3.5mm接口 + 3.5mm三环线时,会触发系统音频紊乱问题,需要重启手机解决。暂不建议通过typeC to 3.5mm + 耳机的方式使用。

视频问题

  1. App 应用切回前台,预览画面闪烁

由于进入后台HarmonyOS NEXT系统会禁止使用摄像头采集视频,因此App切回前台需重新启动摄像,因此会画面闪烁,待后续优化。

性能问题

  1. 快速重复创建销毁引擎,偶现ANR

    请不要在回调方法中,调用RTC的API。建议平台层做快速切换保护。

    由于HarmonyOS NEXT上层使用TS引擎,上层只有一个线程,如果刚刚在回调数据过程,调用Native API,有概率导致ANR。正在跟鸿蒙方沟通优化方案,已知问题,持续优化中。

  2. 事件回调不及时

    建议减少回调监听的注册,按需做回调监听。

    原因同上,由于Native回调到平台层,必须回到主线程,导致回调必须等待上一个回调执行完毕,因此,部分回调的回调时机,不如Android/iOS平台及时。正在跟鸿蒙方沟通优化方案。

数据回调问题

  1. 暂时不提供录制视频数据、音频数据等原始数据接口

    由于回调到平台层,必须回到主线程。在主线程对录制的视频数据、音频数据做前处理,会导致主线程被卡住,进而导致ANR。因此,本期暂不提供原始数据接口方案。

相关文档

HarmonyOS ATRC SDK合规配置指引