使用ivx实现录音功能的经验总结
有时在案例中我们会需要使用录音的功能,今天就讲一讲在ivx中录音是如何实现的吧。 1.首先录音是使用微信的录音功能,因此案例中需要添加一个微信公众号组件,另外当点击按钮要开始录音时,我们也要先判断案例的运行环境是否是在微信浏览器的环境下。不是的话需要提示用户,如果是则让微信公众号开始录音,然后重置触发器的状态,再将数值变量“状态”置1,播放触发器。 2.数值变量“状态” 上一步中有一个将“状态”置1的操作,这个数值变量的作用是显示不同页面的,其初始值是0。我们的录音界面是用了一个横幅展示的,其可见属性进行了数据绑定,只有当“状态”不等于0时横幅才显示,而且录音界面下有两种状态,通过if容器进行判断显示,当“状态”等于1时显示录音中的界面,当“状态”等于2时显示录音结束界面。 3.触发器 由于微信的限制录音的时长不能超过60s,所以我们需要对当前录音的时长做一个记录,用到的组件就是触发器,其属性里设置了时间间隔为1s,即每过1s触发器播放一次。 当触发器触发后我们用一个数值变量“录音时间”来记录当前录音时长,横幅下的文本组件也直接绑定“录音时间”。 每次触发器播放将“录音时间”加1(这也正是触发器的间隔时间),然后判断“录音时间”是否大于等于60,如果是则表示已达到最大录音时长,我们就停止录音,将触发器暂停,微信公众号停止录音并上传,在其回调中我们可以收到三个参数,本地ID