iOS开发微信收款到账语音提醒功能思路详解
iOS开发微信收款到账语音提醒功能思路详解 本文主要介绍了iOS开发微信收款到账语音提醒功能的思路详解,涵盖了背景、技术方案、TTS合成语音、唤醒后播放音频文件、静音开关检测等方面的知识点。 一、背景 在频繁交易中,小商户老板们会面临核对、确认到账的痛点,为了解决这个问题,产品MM提出了新版本需要支持收款到账语音提醒功能。该功能可以在收款方收到款后,播放一段TTS合成语音播报金额。 二、技术方案 后台唤醒是收款到账语音提醒功能的关键技术点。iOS提供了两种方式唤醒处于挂起或已经被kill掉的app:Silent Notification和VoIP Push Notification。客户端在被唤醒之后将获得30s的后台运行时间,这段运行时间足以请求合成语音数据并播放。VoIP Push Notification明显更适合用于收款到账语音提醒的唤醒方案。 三、TTS合成语音 TTS合成语音方案分为离线合成方案和在线合成方案。离线合成方案省去网络请求,合成速度更快,节省网络流量,但是合成音的听起来比较机械,语速和停顿的处理较差一些。如果对合成音的效果要求不是特别高,可以考虑采用iOS自带的AVSpeechSynthesis框架,免去语音库的合入,减少安装包大小。在线合成方案的效果则相对更像人声,富有感情。考虑到产品体验,我们采用了搜索产品部提供的在线语音合成方案。 四、唤醒后播放音频文件 唤醒后播放音频文件需要在后台或者锁屏状态下播放音频文件,AVAudio Session的Category值需要使用AVAudioSessionCategoryPlayback或是AVAudioSessionCategoryPlayAndRecord,CategoryOptions根据实际需要可选择MixWithOthers(与其他声音混音)或是DuckOthers(调低其他声音的音量)。需要注意的是,只有iOS10以上才支持app被唤醒后在后台/锁屏状态下播放音频。 五、静音开关检测 静音开关检测是收款到账语音提醒功能的重要技术点。苹果对push铃声的处理是受到静音开关控制的,所以需要获取当前静音开关的状态。但是苹果在iOS5之后并没有明确地提供一种方式让开发获取静音开关的状态,这就陷入了一个尴尬的局面。可以使用旧版本的方法来监听静音键开关,但是这种方法在iOS5之后已经不起作用。
































- 粉丝: 4
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 设计院档案管理信息化水平的提升策略研究.docx
- 小三大战中国互联网2012第一口水战.docx
- 计算机英语课内实践教学的研究与实施①.docx
- Oracle数据库选件概览.pdf
- 大林算法在温度控制中的应用.ppt.doc
- 大数据统计分析方法在经济管理领域中的应用.docx
- 区块链技术在网络安全中的应用.docx
- 校园监控项目管理.doc
- 《计算机安全与防护》.doc
- 单片机课程实施方案(多路数字抢答器).doc
- 单片机对精馏塔温度控制系统设计方案.doc
- 2010-2015山东省物联网产业发展计划.doc
- 初中计算机教学存在问题及对策研究.docx
- 有线电视实用技术及其网络.doc
- 项目管理之瞠目相争-外行能不能领导内行做软件开发.docx
- 区块链+视角下河南省中小企业创新型融资服务方案研究.docx


