2017-03-05 63 views
2

所以我正在做我寫過幾百次的非常簡單的圖像選取器。爲此,我寫了這個非常簡單的擴展:UIImagePickerController在選擇視頻時在iOS 10.3中崩潰

extension UIImagePickerController { 

    func present(over controller: UIViewController, 
       with source: UIImagePickerControllerSourceType, 
       mediaTypes: [String]? = nil) { 

     DispatchQueue.main.async { 
      self.allowsEditing = true 
      self.sourceType = source 
      if source == .camera { 
       self.cameraDevice = .front 
      } 
      self.modalPresentationStyle = .popover 
      self.mediaTypes = mediaTypes ?? UIImagePickerController.availableMediaTypes(for: source) ?? [] 
      controller.present(self, animated: true, completion: nil) 
     } 
    } 
} 

它的工作原理完美。當然,直到你選擇一個視頻。 只要你選擇一個視頻,我得到這個美女一個堆棧跟蹤:

BEAUTIFUL!!!!!

而且你問之前。是的,我已經設置了我在Info.plist中的所有隱私設置:

NSPhotoLibraryUsageDescription NSMicrophoneUsageDescription NSCameraUsageDescription

難道這是在10.3測試版的問題?我希望如此;)都能跟得上

編輯:我設法測試這個在其他設備上,它並沒有什麼可以做的測試版。

到目前爲止我最好的競爭者是:

  • 我搞砸的東西了(很大的可能性)
  • 別的東西(的依賴,也許)被註冊了錯誤的通知
+0

好吧,找出它是否爲10.3問題的簡單方法是在運行非beta版iOS版本的東西上嘗試它。你可以? – dfd

+0

@dfd不是沒有降級。我手邊只有一個設備。我希望它能在測試版中使用Swift 3.1 ...我只想看看是否有人在通過降級和稍後升級之前有此問題;) –

+0

我設法讓朋友測試它,它不是測試版相關... –

回答

1

盤後和小時我發現這個問題。結果在項目中有人認爲這是一個好主意,寫這個:

 NotificationCenter.default.addObserver(forName: nil, 
      object: nil, 
      queue: nil) { note in 

       // Some strange code we were not using anymore 
       // Mainly logging all activity made as Notifications 
     } 

他只是想要更多的日誌。 這似乎惹到:

  • 一些C++中AVPlayer
  • 例外獲取本地AVAssets用URL

非常感謝反正;)

現在是時候把Git的怪成使用!

相關問題