我正在使用
swift 2尝试以下代码,在
swift 1中应该没问题.
class NewSoundViewController: UIViewController { required init(coder aDecoder: NSCoder) { let audioURL = NSURL.fileURLWithPathComponents([ NSSearchPathForDirectoriesInDomains(.DocumentDirectory,.UserDomainMask,true)[0],"MyAudio.m4a" ]) do { let session = AVAudioSession.sharedInstance() try session.setCategory(AVAudioSessionCategoryPlayAndRecord) } catch { print("Session errors.") } do { let recordSettings: [String: AnyObject] = [ AVFormatIDKey: kAudioFormatMPEG4AAC,AVSampleRateKey: 44100.0,AVNumberOfChannelsKey: 2,] self.audioRecorder = try AVAudioRecorder(URL: audioURL!,settings: recordSettings) self.audioRecorder.meteringEnabled = true self.audioRecorder.preparetoRecord() } catch let error as NSError{ print(error.description) } catch { print("Other errors") } super.init(coder: aDecoder) }
类型’AudioFormatID’不符合协议’AnyObject’
在AVFormatIDKey行:kAudioFormatMPEG4AAC,.
如果我注释掉该行,我通过了构建,但是遇到了运行时错误
错误域= NSOsstatusErrorDomain代码= 1718449215“操作无法完成.(Osstatus错误1718449215.)”
我还尝试了AVFormatIDKey:NSNumber(unsignedInt:kAudioFormatMPEG4AAC),并且遇到了运行时错误. Xcode似乎进入调试模式它红色突出显示self.audioRecorder =尝试AVAudioRecorder(URL:audioURL!,settings:recordSettings)并表示
线程1:EXC_BAD_ACCESS(代码= 1,地址= 0x0)
谁能帮帮我吗?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。