Могу ли я закодировать UIImage в URL, который отправляется с помощью MSMessage в расширении приложения iMessage?
Я пытаюсь отправить изображение вместе с сообщением, которое мое приложение создает и вставляет для отправки другим пользователям. Изображение будет тем же изображением, которое используется в свойстве макета сообщения, но, очевидно, нет способа получить доступ к свойству изображения в макете сообщения на стороне принимающего пользователя.
Можно ли отправить изображение в URL-адресе, прикрепленном к сообщению, а затем получить к нему доступ в экземпляре приложения второго пользователя? Как я мог пойти об этом?
2 ответа
Пара идей:
- Внедрите CloudKit, чтобы сохранить / запросить изображение (или другое "облачное" решение), и использовать message.url, чтобы поделиться URL-адресом изображения.
- Если изображение создано, а не актив, используйте message.url для выполнения "инструкций" по восстановлению, если это возможно?
Как схема URL iMessage поддерживает 5000 символов, как написано в документации Apple: https://developer.apple.com/reference/messages/msmessage/1649739-url
Вы можете использовать преобразование вашего UIImage в NSData, а затем преобразовать NSData в String и отправить строку в схеме URL. Чтобы получить, декодировать из строки в UIImage.
Например:
let image = UIImage.init(named: "myImage.png")
let data = UIImagePNGRepresentation(image!)
let strImageData = data?.base64EncodedString(options: .lineLength64Characters)
Надеюсь это поможет