将推送到手机的消息转换成语音自动播放的实现(如支付到账语音通知)

如何将推送到手机的消息通知转换成语音自动播放出来?典型的应用场景是,顾客支付成功后,收银员的手机自动播放支付到账语音。

要实现这个需求,一是需要语音合成API,可使用百度的语音合成API,另外就是手机收到消息时,调用完百度语音合成后,将音频用MediaPlayer播放出来。

我现在以友盟的消息推送接口为例,从友盟网站下载安卓版消息推送Demo,找到PushExample例子中的

MyApplication类,找到 
public Notification getNotification(Context context, UMessage msg),在{后面增加代码:
AudioManager  audioMgr  = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
audioMgr.setStreamVolume(AudioManager.STREAM_MUSIC, 50,  AudioManager.FLAG_PLAY_SOUND);//设置音量
String path = "http://tsn.baidu.com/text2audio?tex="+msg.text+"&lan=zh&tok=TOKEN&ctp=1&cuid=qwsdasdcgyhuh";/
Uri uri = Uri.parse(path);

MediaPlayer player = new MediaPlayer();

 
 try {
     player.setDataSource(context, uri);
     player.prepare();
     player.start();
 }
 catch(Exception ex)
 {}

 player.start();
说明:path参数中的TOKEN需要调用百度API生成。
msg.text是服务器端推送过来的消息,传到百度语音合成接口中,可将文字转换为语音流播放出来。
添加了以上代码后,在友盟服务器上使用测试工具即可体验消息推送自动播放语音的效果(关于DeviceToken和密钥的配置略)。
我相信上面的代码一定会给想实现消息推送自动播放语音及想实现支付到账语音通知的朋友以很大的帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值