Совместное использование iBooks с приложением iOS

У меня есть вопрос о совместном использовании iBooks.

Я хочу открыть книгу из iBooks с помощью своего приложения для iOS. Чтобы создать это, я указал тип контента:

<dict>
    <key>CFBundleTypeName</key>
    <string>All Files</string>
    <key>LSHandlerRank</key>
    <string>Alternate</string>
    <key>LSItemContentTypes</key>
    <array>
        <string>public.calendar-event</string>
        <string>public.database</string>
        <string>public.executable</string>
        <string>public.data</string>
        <string>public.content </string>
        <string>public.item</string>
    </array>
</dict>

Насколько я понимаю, здесь должны быть все доступные файлы. Тем не менее, когда я делюсь документом из iBooks, мой выбор приложения не отображается:https://drive.google.com/file/d/0B6ycu14tT4SGeExGZV9Ca3ZJeEk/view?usp=sharing

В чем проблема?


person Proto Invalidas    schedule 07.04.2015    source источник


Ответы (2)


Эти типы контента используются, когда приложение пытается напрямую открыть файл с помощью UIDocumentInteractionController (Темы по программированию взаимодействия с документами для iOS)

То, что показывает iBooks, — это диалоговое окно общего доступа, и если вы хотите появиться в нем, единственным вариантом может быть использование расширения приложения (Руководство по программированию расширений для приложений)

В любом случае, вы не получите от этого многого, поскольку то, что iBooks разделяет, это просто название / автор книги и ссылка на iTunes, если она куплена оттуда, а не настоящая книга (вы знаете, DRM и прочее ...)

person Fabio Ritrovato    schedule 07.04.2015
comment
Значит, нет возможности открыть книгу из iBooks другим приложением? - person Proto Invalidas; 07.04.2015

ОБНОВЛЕНИЕ 2019:

Теперь вы можете открыть iBooks для конкретной книги, включив идентификатор книги, которую хотите открыть. Пример:

ibooks://assetid/1396541327

Подробности доступны на веб-сайте Apple.com — https://support.apple.com/en-us/HT202929

person AFK    schedule 08.06.2019