Мне не удалось поделиться чем-либо через «UIDocumentInteractionController», так как я прошел почти все руководства и онлайн-помощь, я хочу найти решение:
Это код, который я использую:
let fileName = "banner_1"
let filePath = Bundle.main.path(forResource: fileName, ofType: "jpg")!
let urlData = URL.init(fileURLWithPath: filePath)
let nsData = NSData(contentsOf: urlData)
let newFileName = "banner_1.jpg"
let newFilePath = "\(NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0])/\(newFileName)"
nsData?.write(toFile: newFilePath, atomically: true)
let newUrlData = URL.init(fileURLWithPath: newFilePath)
documentController?.url = urlData // or newUrlData
documentController?.uti = "net.whatsapp.image"
documentController?.presentOpenInMenu(from: CGRect.zero, in: self.view, animated: true)
Каждый раз, когда я нажимаю одну плитку меню обмена для WhatsApp или мессенджера, ничего не происходит, и у меня появляется этот журнал ошибок:
2018-02-02 19: 56: 31.293849-0300 myapp [748: 116227] [core] SLComposeViewController initWithExtension: {id = net.whatsapp.WhatsApp.ShareExtension} requestedServiceType: (null)
2018-02-02 19: 56: 31.296021-0300 myapp [748: 116227] [core] SLComposeViewController addExtensionItem: - userInfo: {NSExtensionItemAttachmentsKey = ("{types = (\ n \" public.jpeg \ ", \ n \" public.file-url \ "\ n)}"); }
2018-02-02 19: 56: 31.883007-0300 myapp [748: 116227] [core] viewWillAppear
2018-02-02 19: 56: 31.883240-0300 myapp [748: 116227] [core] SLComposeViewController, включая 1 явный NSExtensionItems
2018-02-02 19: 56: 31.883311-0300 myapp [748: 116227] [core] SLComposeViewController собирается создать экземпляр контроллера удаленного представления с массивом из 1 NSExtensionItems
2018-02-02 19:56: 31.886583-0300 myapp [748: 116227] [core] viewDidAppear
2018-02-02 19: 56: 31.989725-0300 myapp [748: 116362] [ops] Ошибка подключения концентратора Ошибка Домен = NSCocoaErrorDomain Code = 4097 "подключение к службе с именем net.whatsapp.WhatsApp.ShareExtension" UserInfo = {NSDebugDescription = соединение в сервис под названием net.whatsapp.WhatsApp.ShareExtension}
2018-02-02 19: 56: 31.991895-0300 myapp [748: 116227] [core] SLComposeViewController завершил создание экземпляра контроллера удаленного просмотра (null) ошибка Ошибка Домен = NSCocoaErrorDomain Code = 4097 "подключение к службе с именем net.whatsapp.WhatsApp.ShareExtension Идентификатор запроса расширения "UserInfo = {NSDebugDescription = соединение с сервисом net.whatsapp.WhatsApp.ShareExtension} (null)"
2018-02-02 19: 56: 31.992325-0300 myapp [748: 116227] [core] HOST: не удалось загрузить контроллер удаленного просмотра с ошибкой: Error Domain = NSCocoaErrorDomain Code = 4097 "подключение к службе с именем net.whatsapp.WhatsApp. ShareExtension "UserInfo = {NSDebugDescription = соединение с сервисом net.whatsapp.WhatsApp.ShareExtension}
2018-02-02 19: 56: 31.992433-0300 myapp [748: 116227] [core] Лист не представлен, вызывая преждевременное завершение
2018-02-02 19: 56: 31.992479-0300 myapp [748: 116227] [core] SLComposeViewController completeWithResult: 0
2018-02-02 19: 56: 31.995770-0300 myapp [748: 116227] [core] SLComposeViewController пропускает явное отклонение, потому что isBeingDismissed уже составляет 1 г
2018-02-02 19:56: 32.001500-0300 myapp [748: 116227] [core] SLComposeViewController dealloc
Я добавил "LSApplicationQueriesSchemes" с "WhatsApp" в файл plist.
Я попытался с помощью UIDocumentInteractionControllerDelegate определить, есть ли какие-либо странные события, но это не очень помогло.
Если есть адея ?! Спасибо, Антуан.