判断一下,安卓系统8.0+以上的走百度语音合成
var ver = plus.os.version.substr(0, 1);
if(parseInt(ver) >= 8){ //判断安卓版本,大于8以上的走百度语音合成
var timestamp = Date.parse(new Date());
if(!plus.storage.getItem("oneTime")){
getBaiDuToken(msg.content); //获取百度token
plus.storage.setItem("oneTime",JSON.stringify(timestamp));
}else{
var oneTime = plus.storage.getItem("oneTime");
if((parseInt(timestamp)-parseInt(oneTime)) > 236060){ //因为token24小时后过期,重新获取一次
plus.storage.setItem("oneTime",JSON.stringify(timestamp)); //大于24小时就更新,再次获取token
getBaiDuToken(msg.content); //获取百度token
}else{
//小于24小时无需重新获取百度token
baiduAubio(msg.content);
}
}
}
//百度语音合成
function baiduAubio(text){
var baiduToken = plus.storage.getItem("baiduToken");
audioP = btts({
tex: text,
tok: JSON.parse(baiduToken),
spd: 6,
pit: 6,
vol: 15,
per: 0
}, {
volume: 0.9,
autoDestory: true,
timeout: 10000,
hidden: false,
onInit: function (htmlAudioElement) {
},
onSuccess: function(htmlAudioElement) {
htmlAudioElement.play(); //播报语音
},
onError: function(text) {
plus.nativeUI.alert(text);
},
onTimeout: function () {
plus.nativeUI.alert("语音播报加载超时!");
}
});
}
2 个回复
3***@qq.com
有没有解决办法
距离您98米 - 哈哈
判断一下,安卓系统8.0+以上的走百度语音合成
var ver = plus.os.version.substr(0, 1);
if(parseInt(ver) >= 8){ //判断安卓版本,大于8以上的走百度语音合成
var timestamp = Date.parse(new Date());
if(!plus.storage.getItem("oneTime")){
getBaiDuToken(msg.content); //获取百度token
plus.storage.setItem("oneTime",JSON.stringify(timestamp));
}else{
var oneTime = plus.storage.getItem("oneTime");
if((parseInt(timestamp)-parseInt(oneTime)) > 236060){ //因为token24小时后过期,重新获取一次
plus.storage.setItem("oneTime",JSON.stringify(timestamp)); //大于24小时就更新,再次获取token
getBaiDuToken(msg.content); //获取百度token
}else{
//小于24小时无需重新获取百度token
baiduAubio(msg.content);
}
}
}
//百度语音合成
function baiduAubio(text){
var baiduToken = plus.storage.getItem("baiduToken");
audioP = btts({
tex: text,
tok: JSON.parse(baiduToken),
spd: 6,
pit: 6,
vol: 15,
per: 0
}, {
volume: 0.9,
autoDestory: true,
timeout: 10000,
hidden: false,
onInit: function (htmlAudioElement) {
},
onSuccess: function(htmlAudioElement) {
htmlAudioElement.play(); //播报语音
},
onError: function(text) {
plus.nativeUI.alert(text);
},
onTimeout: function () {
plus.nativeUI.alert("语音播报加载超时!");
}
});
}
3***@qq.com
没有别的办法吗,类似于有什么办法能把最新的科大讯飞SDK打进去
2018-12-06 15:43