Swift shardApplication(). OpenURL() с URI данных

Итак, у меня есть String с шаблоном

let dataURI = 'data:MIMEType;base64,DATA'

где данные заполнены связкой base64, представляющей файл, который я хочу открыть. Этот URL будет загружен в WKWebView или UIWebView; однако, когда я пытаюсь взять тот же URL и открыть его через

let uri = NSURL(string: dataURI)
UIApplication.sharedApplication().openURL(uri)

Я получаю ошибку

LaunchServices: ERROR: There is no registered handler for URL scheme data

Я также попытался строку с форматом

let uristring = 'data://' + dataURI 

который получает ту же ошибку.

Есть идеи, что здесь происходит?

Спасибо!

1 ответ

Решение

iOS содержит только обработчики для нескольких схем URL (особенно http, mailto, tel, а также sms). К сожалению, он не поставляется со встроенной поддержкой data схема. Из-за этого ОС не знает, что она может передавать ваши данные в Safari для отображения.

Вы можете найти больше информации о Inter-App Communication здесь и всех схемах, изначально поддерживаемых iOS здесь.

Другие вопросы по тегам