一、进入小程序管理后台,菜单拉到最底下的“设置”
二、设置=》第三方设置=》插件管理=》添加插件,输入“微信同声传译”即可添加
三、修改app.json文件,plugins节点下增加
"WechatSI": {"version": "0.3.5","provider": "wx069ba97219f66d99"
}
四、页面js文件=》page data下增加:
//同声传译currentText: '',translateText: ''
五、页面js文件增加:
//同声传译
const plugin = requirePlugin("WechatSI");
const manager = plugin.getRecordRecognitionManager();
translateTextAction: function(currText) {console.log('enter translateTextAction...');let lfrom = 'en_US' //注:from和to不能相同,否则会报错let lto = 'zh_CN'plugin.translate({lfrom: lfrom,lto: lto,content: currText,tts: true, // 需要合成语音success: (resTrans)=>{console.log('resTrans...');debugger;// 翻译可以得到 翻译文本,翻译文本的合成语音,合成语音的过期时间let text = resTrans.resultthis.setData({translateText: text,})// 得到合成语音让它自动播放出来wx.playBackgroundAudio({dataUrl: resTrans.filename,title: 'abc',success:function(res){console.log('play success');},fail: function(){console.log('play fail');},complete: function(){console.log('play complete');}})},fail:(res)=>{console.log('fail...');console.log(res);},})},
需要发声的地方,写个调用就可以了:
this.translateTextAction('张三已签到');
是不是很简单?
当然,人家本来是用于翻译的,我们把它拿来获取语音了,也算是一种取巧吧。