Медиа-вложение обрезает изображение в уведомлении ios 10

Уведомления iOS10 позволяют нам добавлять к ним изображения в виде медиа-вложений. К сожалению, я не нашел хорошего способа контролировать внешний вид вложения внутри уведомления.

Например, я добавляю в качестве вложения это изображение: введите здесь описание изображения

И это отображается как:

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

Я передаю квадратные изображения и хочу избежать кадрирования изображения (как вы можете видеть, одно ухо кошки было обрезано).

Я отправляю уведомление (как локальное) через этот фрагмент:

    let content = UNMutableNotificationContent()
    content.title = "Test notification"
    content.body = "Test notification"
    content.categoryIdentifier = "myNotificationCategory"

    let attachement = try! UNNotificationAttachment(identifier: "image",
                                                                url: Bundle.main.url(forResource: "cat", withExtension: "png")!,
                                                                options: nil)

    content.attachments = [ attachement ]
    let request = UNNotificationRequest(identifier:requestIdentifier, content: content, trigger: nil)
    UNUserNotificationCenter.current().delegate = self
    UNUserNotificationCenter.current().add(request){(error) in
        if (error != nil){
        }
    }

Итак, вопросы:

  • Можно ли избежать кадрирования изображения? (Если нет - как вообще убрать изображение?)
  • Бонусный вопрос: есть ли способ показать 2 медиа-вложения в одном уведомлении (пока оно свернуто)

Спасибо!


person Konstantin Loginov    schedule 22.08.2016    source источник
comment
Может быть, с UNNotificationAttachmentOptionsThumbnailClippingRectKey поставить параметр option к методу создания UNNotificationAttachment? См. документ для получения дополнительной информации.   -  person Larme    schedule 23.08.2016
comment
@Larme спасибо за комментарий! Док выглядит многообещающе, но в реальной жизни так и не удалось заставить его работать (Xcode-beta5, iOS 10 beta 5). Ты это пробовал?   -  person Konstantin Loginov    schedule 23.08.2016
comment
Я проголосовал за кота. (и хороший вопрос, конечно).   -  person Edison    schedule 23.08.2016


Ответы (2)


Вы должны - как @larme комментарии - быть в состоянии использовать UNNotificationAttachmentOptionsThumbnailClippingRectKey. Однако, похоже, где-то там есть ошибка:

person Roy Solberg    schedule 23.08.2016

Я возвращаюсь к этой очень старой теме… Решение, которое я нашел (не великолепное!), — это создать еще одно изображение (в ресурсе) квадратного формата. Потому что прямоугольник на самом деле является квадратом, который обрезает оригинал.

person claude31    schedule 29.09.2020