ios – Swift 3 Xcode 8中的FileManager和urlsForDirectory错误

前端之家收集整理的这篇文章主要介绍了ios – Swift 3 Xcode 8中的FileManager和urlsForDirectory错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚从beta 3进入了 Xcode 8 beta 4,但出于任何原因我得到的这个错误没有错误或直到测试版4发出.这里是错误“类型’FileManager’的值没有成员’urlsForDirectory’ “

我的代码

  1. func setupRecorder(){
  2.  
  3. let audioSession:AVAudioSession = AVAudioSession.sharedInstance()
  4.  
  5. //ask for permission
  6. if (audioSession.responds(to: #selector(AVAudioSession.requestRecordPermission(_:)))) {
  7. AVAudioSession.sharedInstance().requestRecordPermission({(granted: Bool)-> Void in
  8. if granted {
  9. print("Permission Granted\n")
  10.  
  11. //set category and activate recorder session
  12. do {
  13. //----
  14. let fileManager = FileManager.default
  15. let urls = fileManager.urlsForDirectory(.documentDirectory,inDomains: .userDomainMask)
  16. //----
  17. let documentDirectory = urls[0] as URL
  18. let soundURL = try! documentDirectory.appendingPathComponent("sound.m4a")
  19.  
  20. try audioSession.setCategory(AVAudioSessionCategoryPlayAndRecord)
  21.  
  22. try self.soundRecorder = AVAudioRecorder(url: soundURL,settings: self.recordSettings)
  23.  
  24. let micInput = try AVAudioRecorder(url
  25. : soundURL,settings: self.recordSettings)
  26.  
  27.  
  28. self.soundRecorder.prepareToRecord()
  29. self.soundRecorder.updateMeters()
  30.  
  31.  
  32.  
  33. } catch {
  34.  
  35. print("Error Recording");
  36.  
  37. }
  38.  
  39. }
  40. })
  41. }
  42.  
  43. }

但唯一的部分是这一行:

  1. let urls = fileManager.urlsForDirectory(.documentDirectory,inDomains: .userDomainMask)

“”FileManager’类型的值没有成员’urlsForDirectory’”

解决方法

您只需将其更改为网址(对于:),如下所示:
  1. let documentDirectory = FileManager.default.urls(for: .documentDirectory,in: .userDomainMask).first!

猜你在找的iOS相关文章