web-dev-qa-db-ja.com

UIImagePickerControllerがiOS10でクラッシュする

iOS10のフォトライブラリソースでUIImagePickerControllerを提示すると、アプリがクラッシュします。

OniOS10 withカメラソースおよびoniOS9with photo library and camera sources 、アプリはクラッシュしません。

アプリはSwift 2.2で記述され、Xcode 7.3.1によって構築されます。

クラッシュが発生するのはなぜですか?

let imagePicker = UIImagePickerController()
imagePicker.sourceType = .PhotoLibrary
imagePicker.allowsEditing = true
imagePicker.delegate = self
self.presentViewController(imagePicker, animated: true, completion: nil)

stack trace

20
r.izumita

最新のXcodeバージョンにアップデートすることでクラッシュを解決しました。問題もここで議論されています: https://github.com/Leanplum/Leanplum-iOS-SDK/issues/12

1
r.izumita

NSCameraUsageDescription(アプリでカメラを使用する場合)およびNSPhotoLibraryUsageDescription(アプリでフォトライブラリを使用する場合)をplistに入れる必要がある場合があります。以下のように、

<key>NSCameraUsageDescription</key>
<string>$(PRODUCT_NAME) needs access to use your camera</string>

<key>NSPhotoLibraryUsageDescription</key>
<string>$(PRODUCT_NAME) needs access to use your photo library</string>
51
Rahul Bansal

ラーフルの答えは完璧です。 plistのソースコード経由ではなく、plistに直接追加する場合は、次のようにします。 plist additions

29
Tim

カメラの許可(マイクの許可も必要)およびPhotoLibraryのplistの許可キー

<key>NSCameraUsageDescription</key>

$ {PRODUCT_NAME}カメラの使用

<key>NSMicrophoneUsageDescription</key>

$ {PRODUCT_NAME}マイクの使用

<key>NSPhotoLibraryUsageDescription</key>

$ {PRODUCT_NAME} PhotoLibraryの使用

1
MAhipal Singh