【Swift5】UIImageを端末に保存する。
以下のようにします。myImageは、保存するUIImageです。カメラロールへのアクセス許可を得るのをお忘れなく。
<key>NSPhotoLibraryAddUsageDescription</key>
<string>Save the created image to the camera roll</string>
UIImageWriteToSavedPhotosAlbum(myImage,self,
#selector(self.didFinishSavingImage(_:didFinishSavingWithError:contextInfo:)),nil)
保存が終わったor失敗した時に呼び出されるメソッド。
@objc func didFinishSavingImage(_ image: UIImage, didFinishSavingWithError error: NSError!, contextInfo: UnsafeMutableRawPointer) {
// 結果によって出すアラートを変更する
var title = "保存完了"
var message = "カメラロールに保存しました"
let ok = "OK"
if error != nil {
title = "エラー"
message = "保存に失敗しました"
}
let alertController = UIAlertController(title: title, message: message, preferredStyle: .alert)
alertController.addAction(UIAlertAction(title: ok, style: .default, handler: { _ in
}))
self.present(alertController, animated: true, completion: nil)
}
広告を出すのに良いタイミングかと思います。