Ошибка сохранения изображения в библиотеке фотографий iOS / Ma c Catalyst App Swift - PullRequest
1 голос
/ 24 февраля 2020

Я создал приложение iOS, которое сохраняет изображение из UIImageView в библиотеку фотографий пользователя. Это работает на iOS, но когда я пытаюсь добавить поддержку Ma c в это приложение, используя продукт Apple Ma c Catalyst в iOS 13 / macOS Catalina, изображение не сохраняется, и мне выдается ошибка сообщение.

Код, который я использую для сохранения фотографии, скопирован ниже:

@objc func export(sender:AnyObject) {
    UIImageWriteToSavedPhotosAlbum(self.previewImageView.image!, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil)
}

@objc func image(_ image: UIImage, didFinishSavingWithError error: Error?, contextInfo: UnsafeRawPointer) {
    if let error = error {
        print("Error saving: \(error)")
        let ac = UIAlertController(title: "Save error", message: error.localizedDescription, preferredStyle: .alert)
        ac.addAction(UIAlertAction(title: "OK", style: .default))
        present(ac, animated: true)
    } else {
        let ac = UIAlertController(title: "Saved", message: "Your image has been saved to your photos.", preferredStyle: .alert)
        ac.addAction(UIAlertAction(title: "OK", style: .default))
        present(ac, animated: true)
    }
}

Сообщение об ошибке в представлении предупреждений «Неизвестная ошибка», но вот сообщение об ошибке, которое напечатано в консоли Xcode:

[GatekeeperXPC] XPC connection error to assetsd getSystemLibraryURLReadOnlyServiceWithReply: : Error Domain=NSCocoaErrorDomain Code=4099 "The connection to service on pid 0 named com.apple.photos.service was invalidated." UserInfo={NSDebugDescription=The connection to service on pid 0 named com.apple.photos.service was invalidated.}

Error saving: Error Domain=ALAssetsLibraryErrorDomain Code=-1 "Unknown error" UserInfo={NSLocalizedDescription=Unknown error, NSUnderlyingError=0x600000cfe4f0 {Error Domain=ALAssetsLibraryErrorDomain Code=-1 "Unknown error" UserInfo={NSLocalizedDescription=Unknown error, NSUnderlyingError=0x600000d01680 {Error Domain=ALAssetsLibraryErrorDomain Code=-1 "Unknown error" UserInfo={NSLocalizedDescription=Unknown error, NSUnderlyingError=0x600000d03930 {Error Domain=com.apple.photos.error Code=41002 "Unable to obtain photolibraryd XPC proxy for getResourceWriteOnlyServiceWithReply:. photolibraryd could have crashed" UserInfo=0x6000017be600 (not displayed)}}}}}}

Знаете ли вы, почему возникает эта ошибка, и, если есть что-то, что я могу сделать, чтобы получить больше информации о том, как исправить эту ошибку или что-нибудь еще Я могу попробовать?

Спасибо.

...