web-dev-qa-db-ja.com

didFinishPickingMediaWithInfoがiOS 13で異なるURLを返す

- (void)videoPickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<UIImagePickerControllerInfoKey,id> *)info

iOS 13と他のiOSでは異なるURLを返します。

なぜこれが起こっているのでしょうか?

iOS 13:

file:///private/var/mobile/Containers/Data/PluginKitPlugin/0849234B-837C-43ED-BEDD-DE4F79E7CE96/tmp/trim.B8AB021D-F4B6-4E50-A93C-8B7F7FB40A1C.MOV

<iOS 13:

file:///private/var/mobile/Containers/Data/Application/5AE52A95-6A2F-49A5-8210-D70E022E9A05/tmp/5A8D81B5-FC42-4228-9514-CD998A4E7FA9.MOV

PluginKitPluginフォルダーに対する権限がないため、エラーが発生しました。

どちらの場合も、imagePickerを使用して動画を選択しています。

8
Kunal Shah

私がiOS 13でこのパスを使用して権限の問題を経験したことから収集したものから、ピッカーは別のアプリ(独自の権限を持つ)であるため、iOS 13でより明示的になりました。アプリではなく一時ディレクトリ。

私たちにとって、コードは指定されたパスが一時ディレクトリであると想定していました。 NSTemporaryDirectoryへの明示的なキャッシュに切り替えました。

0
ajso