Я создаю PDF-файл в приложении ios и экспортирую его через UIDocumentInteractionController. Поскольку это медицинское приложение, адвокат разрешит мне экспортировать файл в iBooks. Я не нахожу каких-либо средств для ограничения экспортных опций, но хотел бы подтвердить, что для этого не существует других способов.Можно ли ограничить параметры экспорта в UIDocumentInteractionController?
ответ
Насколько я знаю, для этого не существует предложенного способа. Я использовал метод ниже, чтобы блокировать множество приложений, но это взломать. В любом случае, я покажу метод. возможно, вы можете найти что-то лучше, чем я.
Мы ограничим приложения, которые могут открыть URL-адрес файла, используя метод UIDocumentInteractionControllerDelegate
.
- (void)documentInteractionController:(UIDocumentInteractionController *)controller willBeginSendingToApplication:(NSString *)application
{
// Only allow iBooks to open.
// I don't actually know the application string for iBooks, so I made this one up.
if (![application isEqualToString:@"com.apple.iBooks"]) {
// Deleting the document will prevent apps from opening the document and will not crash the app.
[[NSFileManager defaultManager] removeItemAtURL:controller.URL error:nil];
// Show an alert saying that the app is not allowed to open the PDF
[controller dismissMenuAnimated:YES];
UIAlertController *alertController = // make a UIAlertController with some message
[self presentViewController:alertController animated:YES completion:nil];
}
}
Повторяю, это очень хакерский и, возможно, не самый лучший способ. Кроме того, это только блокирует приложения, открывающие новое приложение при совместном использовании. Если вы выберете опцию Mail для совместного использования, тогда откроется модальный MFMailComposeViewController
, и этот метод не будет вызываться. Могут быть и другие приложения, которые ведут себя так.
Делай с этим, что пожелаешь. Если вы найдете лучшее решение, пожалуйста, уточните нас!
Используйте UIActivityViewController и источник UIActivityItem. Вы можете устранить все системные службы, кроме iBooks, но вы не можете запретить пользователю добавлять такие действия, как расширения общего доступа из других приложений. Таким образом, содержание представления активности не полностью зависит от вас. Но UIActivityItemSource сообщается идентификатору процесса запроса, поэтому вы можете предоставить свой PDF для iBooks и дать nil
всем остальным.
Мне нравится видеть код для этого типа или даже ссылку на пример. Прежде чем я увидел ваш ответ, я просто собирался отказаться от этого. – Suragch
- 1. Можно ли представить UIDocumentInteractionController для нескольких элементов?
- 2. UIActivityViewController & UIDocumentInteractionController не показывает параметры
- 3. можно ли ограничить закладку?
- 4. Можно ли настроить файл экспорта в moodle
- 5. Можно ли игнорировать параметры?
- 6. UIDocumentInteractionController занимает много времени, чтобы показать параметры
- 7. Можно ли ограничить «каждый в» в «Метеор»?
- 8. ограничить параметры состояния CUBIST
- 9. Можно ли ограничить разрешения для каждой процедуры?
- 10. UIDocumentInteractionController
- 11. Можно ли ограничить пересылку в видео HTML5?
- 12. Можно ли зацикливать параметры шаблона?
- 13. Можно ли ограничить поля в адресной книге, которые можно редактировать?
- 14. Параметры экспорта/импорта в Visual Studio .NET?
- 15. Можно ли иметь дополнительные параметры в DTO?
- 16. Можно ли передавать пользовательские параметры в tween?
- 17. Можно ли форматировать параметры в ruby / irb?
- 18. Можно ли получить параметры в модуле .config
- 19. Можно ли передавать параметры в массив-член?
- 20. Можно ли отправлять параметры в ValidationMessages_en_US.properties ?? Как?
- 21. Можно ли перебирать параметры метода в C#?
- 22. Можно ли использовать именованные параметры в scala?
- 23. Можно ли отправлять параметры в задачу Нанта?
- 24. Можно ли ограничить общие классы конкретными методами?
- 25. Можно ли ограничить номер определенным диапазоном
- 26. Можно ли ограничить подсчет оси Y гистограммы?
- 27. Можно ли ограничить результаты внешнего соединения?
- 28. Можно ли ограничить количество посмешиваемых вызовов функций?
- 29. GLMM- Можно ли ограничить комбинации переменных?
- 30. Можно ли ограничить набор/сброс EventWaitHandle?
Если вы хотите экспортировать только в одно конкретное приложение, зачем использовать UIDocumentInteractionController? – rmaddy
Есть ли альтернатива? Я, хотя я хотел использовать UIDocumentInteractionController. – nwales