AAAなブログ

あなたの求めているものは、ここにはない!

UISaveVideoAtPathToSavedPhotosAlbum の挙動が iOS 15 で変わっちゃった

iOS/iPadOS でビデオを作成して システムのフォトライブラリに追加するケースです。通常は PhotoKit を利用するのが良いです。

 

PhotoKit を利用するとファイル名がDCF形式(例: IMG_0123.mov)にならない

いや、Assetを Createするときにファイルじゃなくて Data を渡せばDCFになるような気がするが、長時間録画の場合などにデータを渡すのは現実的ではない。モバイルデバイスのメモリは有限だ。やはりファイルを渡すしかないでしょう。

でも、やはりDCF形式にしたい。

 

UIKit の UISaveVideAtPathToSavedPhotosAlbum

という レガシーAPIを使えばDCF形式になる。

ちょっと古くてSwiftyじゃないけどまだ非推奨にはなっていないし、まあ使える。と思ってたのだが・・・

 

iOS 15 から ファイル名がDCF準拠じゃなくなった

残念。Appleは このAPIを見捨てたのか?引数にファイルを渡すインターフェースなんだけど、そのファイルの名前が付けられてしまう実装仕様に変えられてしまった。

 

ということで、今後は UIKit の方を利用する理由がなくなりました。

しょうがない。PhotoKitに書き換えるか。時代がそういうなら仕方ない。