Как получить URL ресурса при использовании PHPhotoLibrary для сохранения изображения и видео? - PullRequest
0 голосов
/ 23 июня 2019

Мой код использовал ALAssetsLibrary для сохранения изображения и видео в галерее iOS.Но Xcode сообщает мне, что ALAssetsLibrary устарела с iOS 9.0, и советует использовать вместо него PHPhotoLibrary.

Со старым ALAssetsLibrary я получаю URL ресурса после сохранения, что-то вроде assets-library://asset/asset.JPG?id=XXX.Но с ALAssetsLibrary я не нашел простого способа вернуть URL ресурса.Множество соответствующих вопросов по SO ссылаются на этот код:

https://gist.github.com/jVirus/2f041bb8b1936093773f0bde42af3a49

Но возвращенный URL-адрес является URL-адресом файла: file://path/to/file, а не URL-адресом актива.

Лучший вариант, который я найду, - это получить Идентификатор актива и объединить строку:

return URL(string: "assets-library://asset/asset.JPG?id="+assetId+"&ext=JPG")

Это небезопасный хак, так как формат URL может измениться в будущем.И иногда я обнаруживал, что Идентификатор актива в конце содержит сегменты "/", которые необходимо удалить перед объединением.

Существует ли какой-либо "официальный" метод API для получения URL-адреса актива PHAsset?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...