У нас возникла проблема с UIImagePickerController
: в нашем приложении пользователи могут выбирать мультимедиа большого размера (например, видео 4k). Для выбора медиафайлов мы используем UIImagePickerController, и все работает хорошо.
Но если пользователь переводит устройство в спящий режим, когда выбранный носитель обрабатывается, и снова заходит в приложение - тогда метод делегата срабатывает.
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any])
и в информационном словаре оно состоит только из двух значений: UIImagePickerControllerReferenceURL
и UIImagePickerControllerMediaType
.
Таким образом, отсутствуют необходимые значения для получения URL-адреса выбранных ресурсов. Метод делегата сработал именно тогда, когда приложение вернулось из фона, и явно раньше, чем медиа, должны быть обработаны.
Поскольку файлы могут быть очень большими, мы не можем позволить пользователю повторно выбирать ресурс каждый раз, когда приложение переходит в фоновый режим. Может быть, у кого-нибудь была эта проблема и известно решение?