开发者社区> 问答> 正文

今天在钉钉小程序踩了个坑,录音的那个api,onstop那个回调,录音文件时长的字段,安卓返回的是毫

今天在钉钉小程序踩了个坑,录音的那个api,onstop那个回调,录音文件时长的字段,安卓返回的是毫秒,iOS返回的是秒,备注一下

展开
收起
乐天香橙派 2023-07-06 11:22:17 273 0
3 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    钉钉小程序中的录音API dd.getRecorderManager(),在录音完成后会触发 onStop 回调函数,该回调函数会返回一个录音文件的相关信息,包括录音时长。需要注意的是,不同操作系统(iOS和Android)返回的录音时长字段单位不同:

    在Android系统中,onStop 回调函数返回的录音时长单位是毫秒(ms)。
    在iOS系统中,onStop 回调函数返回的录音时长单位是秒(s)。

    2023-07-29 21:52:09
    赞同 展开评论 打赏
  • 造成问题的原因:微应用中的jsapi必须在钉钉环境内才能正常调用不能在浏览器打开的页面中调用jsapi,需要把此页面地址配置到微应用首页地址,然后在钉钉工作台打开该微应用—此回答来自钉群“钉钉开发者社区(互助群)”

    2023-07-06 14:21:07
    赞同 展开评论 打赏
  • 钉钉小程序录音API中的onStop回调在不同平台上可能返回不同的录音文件时长单位。

    对于安卓平台,onStop回调返回的录音文件时长单位是毫秒(ms)。这意味着你需要将返回的时长值除以1000,以将其转换为秒。

    以下是一个示例代码片段,展示了如何处理安卓平台上onStop回调中的录音时长字段:

    dd.getRecorderManager().onStop((res) => {
      // 获取录音文件时长并转换为秒
      const durationSeconds = res.duration / 1000;
      console.log('录音时长(秒):', durationSeconds);
    });
    

    对于其他平台(如iOS),onStop回调返回的录音文件时长单位可能是秒。因此,在处理时无需进行单位转换。

    2023-07-06 13:59:22
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
Spring Boot2.0实战Redis分布式缓存 立即下载
CUDA MATH API 立即下载
API PLAYBOOK 立即下载