iOS делиться расширениями и изображениями в Safari

У меня есть расширение общего доступа, которое помечено как поддерживающее вложения public.url, и оно отлично работает для обычных веб-страниц, которыми обмениваются с мобильного сафари. Однако, если вы просматриваете изображение в мобильном сафари, расширение моего общего доступа недоступно для просмотра, даже если изображение находится на общедоступном URL-адресе.

Кто-нибудь знает, как сказать, что вы хотите поддерживать что-либо с общедоступным URL-адресом?


person Jozef Dransfield    schedule 22.11.2014    source источник


Ответы (1)


Если у кого-то есть такая же проблема: вы можете изменить NSExtensionActivationRule на следующее:

SUBQUERY (
                extensionItems,
                $extensionItem,
                SUBQUERY (
                $extensionItem.attachments,
                $attachment,

                (
                           ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.url"
                )

    ).@count == $extensionItem.attachments.@count
).@count == 1

Затем вам просто нужно перебирать вложения, пока не найдете тот, который является public.url.

person Jozef Dransfield    schedule 23.11.2014
comment
Я не думаю, что это правильный ответ. Safari каким-то образом отправляет вложение с идентификатором public.jpeg, когда у вас просто открыто изображение в Safari. Почему-то NSExtensionActivationSupportsImageWithMaxCount не срабатывает на public.jpeg, а только на public.image. Однако не уверен, как должен выглядеть запрос. - person denbec; 04.01.2017