iOS开发——语音播报

闲来无事,突然想要听一下苹果的语音功能,然后就自己查资料搞一下。

在iOS7之前,想要实现语音播报文字内容,可能需要第三方资源库来实现。现在在iOS7上,系统为我们提供了语音播报文字的功能,我们不仅可以播报英语内容,也可以播报汉语文字,所以对于开发者来说真是个福音。

需要导入AVFoundattion:

当前的设备判断

  NSString *warnmsg = @"今天天气真好,工作加油";

  if ([[[UIDevice  currentDevice] systemVersion]integerValue ]>=7.0) {

  //AVSpeechUtterance 

AVSpeechUtterance是设置需要播报的文字内容-warnmsg、语音速率-rate以及语言种类-preferredLang,而AVSpeechSynthesizer就是开始同步播放的类。

        AVSpeechUtterance *utterance =[AVSpeechUtterance  speechUtteranceWithString:warnmsg];

//速率

        utterance.rate *= 0.8;

//同步语音

          AVSpeechSynthesizer *synth = [[AVSpeechSynthesizer alloc] init];

        /**

         *  获取当前系统语音

         */

        NSString *preferredLang = @"";

//语言的设置

        preferredLang = @"zh-HK";

        AVSpeechSynthesisVoice *voice =[AVSpeechSynthesisVoice  voiceWithLanguage:[NSString stringWithFormat:@"%@",preferredLang]];

        utterance.voice = voice;

        [synth  speakUtterance:utterance];

    }

 

转载于:https://www.cnblogs.com/qinxiaoguang/p/5689366.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值