iOS 13 Share Sheet: изменение описания субтитров/элемента

Новый лист общего доступа в iOS 13 имеет красивый заголовок, показывающий контекст общего элемента.

введите описание изображения здесь

Я так и не понял, как изменить описание товара. Я использовал функцию activityViewControllerLinkMetadata, которая частично дает мне то, что мне нужно (изменение заголовка и значка), но originalURL, который отвечает за отображение описания элемента, принимает только URL-адрес, и каждая строка должна быть экранирована, если мы создаем URL-адрес из строки ( пробел до %20, например).

@available(iOS 13.0, *)
        func activityViewControllerLinkMetadata(_: UIActivityViewController) -> LPLinkMetadata? {
            let metadata = LPLinkMetadata()
            metadata.title = song.title

            if let data = song.artistNames.data(using: .utf8) {
                let url = URL(dataRepresentation: data, relativeTo: nil)

                metadata.originalURL = URL(dataRepresentation: data, relativeTo: nil)

                if let image = image {
                    metadata.iconProvider = NSItemProvider(object: image)
                }
            }
            return metadata
        }

Приложение App Store и Music может это сделать - кто-нибудь понял это?


person Jagoan Neon    schedule 06.03.2020    source источник


Ответы (1)


Это действительно глупо, но вот как это сделать.

metadata.originalURL = URL(fileURLWithPath: "whatever description you want to put")

И, как примечание, вам не нужно создавать сам файл/папку.

person Jagoan Neon    schedule 09.03.2020