Я создаю pdf в моем приложении ios9 и хотел бы сохранить его в iBooks с помощью UIActivityViewController. К сожалению, с кодом настоящее время я использую (в предположении, что все варианты использования:Как сохранить файл PDF, созданный в моем приложении, в iBooks с помощью UIActivityViewController?
applicationActivities: nil
за то, что я могу сделать с этим файлом будет отображаться) только «сообщение» и «Почта» пунктов обнаружиться. Я не исключаю никаких действий, поэтому гипотетически UIActivityTypeOpenInIBooks должен проявляться просто отлично. Тем не менее, я не могу получить iBooks или что-то еще, кроме сообщений и почты. (Для дальнейшего использования я буду ссылаться на этот результат как результат A) Есть ли другой рекомендуемый способ сделать это? код я использую ниже:
// creating pdf image from the UIView
let pdf = self.getPDFImageFromDrawingView()
let activityViewController = UIActivityViewController(activityItems: [pdf], applicationActivities: nil) //should include any and all available activities right?
self.presentViewController(activityViewController, animated: true, completion: nil)
Есть ли что-то очевидно, я забыл? Как включить iBooks в качестве опции для сохранения файлов?
EDIT:
В отладке этот вопрос, я сохранил содержание UIView как JPG и в виде файла PDF. Когда я использую ТОЛЬКО сгенерированного UIImage как таковой:
(результат B)
let image = self.getUIImageFromDrawingView() // generate a UIImage object
let activityViewController = UIActivityViewController(activityItems: [image], applicationActivities: nil)
self.presentViewController(activityViewController, animated: true, completion: nil)
все возможные варианты показать, в том числе открыть в интерактивные книги (YES Но мне нужно много-высокое разрешение изображения! генерируется путем создания PDF)
Когда я добавляю ОБА изображения и PDF к activityItems (как, например:.
(результат C)
let image = self.getUIImageFromDrawingView() // UIImage
let pdf = self.getPDFImageFromDrawingView() //produces an NSData object
let activityViewController = UIActivityViewController(activityItems: [image, pdf], applicationActivities:nil)
), я получаю больше возможностей, то первоначальные почты и сообщений опции - как FB, Pinterest и Evernote - но не интерактивные книги.
Наконец, когда я возвращаюсь к использованию только PDF-файла, у меня такие же вещи, как и раньше, - только почта и сообщения. Что может быть причиной этого? (BTW, интересно, если не бесполезно в стороне - при использовании как JPG, так и PDF-файлов и тестирования приложенияActivities with Mail - я получаю письмо в формате jpg и pdf, как и ожидалось. Поэтому файлы генерируются, как ожидалось).
Что может быть причиной этого странного поведения?
EDIT 2:
Я думал, что может быть проблема в том, что я использовал NSData для отправки PDF. Итак, я сохранил объект как NSURL и использовал его. Я получил тот же результат, что и в (C) выше - больше вариантов, а затем просто сообщений и почты, но нет iBooks. Этот результат пришел с использованием комбинации UIImage + NSURL, и при использовании только NSURL. Когда я использовал UIImage один, у меня было много вариантов, как в предыдущей ситуации, включая iBooks.