открыть iBooks из моего приложения - PullRequest
3 голосов
/ 29 июля 2010

У меня есть PDF в моем приложении.Я хочу предоставить возможность открывать эти PDF-файлы в других сторонних приложениях для чтения электронных книг, которые могут быть установлены на устройстве, таких как Stanza и iBooks.Приложение Dropbox успешно реализовало эту функцию, и я не могу найти никакой информации о том, как определить, какие другие электронные ридеры доступны на устройстве или какова схема пользовательских URL для этих приложений.Любая помощь будет принята с благодарностью.заранее спасибо, ребята.

Ответы [ 4 ]

2 голосов
/ 10 июня 2011

iBooks

NSString *stringURL = @"itms-books:";

NSURL *url = [NSURL URLWithString:stringURL];

[[UIApplication sharedApplication] openURL:url];

NSString *stringURL = @"itms-bookss:";

NSURL *url = [NSURL URLWithString:stringURL];

[[UIApplication sharedApplication] openURL:url];
0 голосов
/ 28 июня 2012

Прежде всего вам нужно создать объект NSURL, например, так:

NSURL *url = [NSURL fileURLWithPath:file.FileName];

file.FileName --> your local file path where the document is stored in the local db.

UIDocumentInteractionController    *docController = [UIDocumentInteractionController interactionControllerWithURL:url];

docController.delegate = self;

[docController retain];

[docController presentOpenInMenuFromRect:CGRectZero inView:self.view animated:YES];

Необходимо реализовать следующие методы делегата:

-(void)documentInteractionController:(UIDocumentInteractionController *)controller willBeginSendingToApplication:(NSString *)application
{

}

- (void)documentInteractionController:(UIDocumentInteractionController *)controller didEndSendingToApplication:(NSString *)application
{

}

- (void)documentInteractionControllerDidDismissOpenInMenu:(UIDocumentInteractionController *)controller
{

}
0 голосов
/ 29 июля 2010

Вам не нужно обнаруживать другие приложения, вам нужно знать URL, который может их открыть.

Такой вызов:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.apple.com"]];

Сообщает, что телефон должен открытьсястраница любого приложения обрабатывает запросы http / html, что является сафари.У iBooks есть собственный формат URL, который, возможно, вы сможете отследить.

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"ebook://iRobot.pdf"]];

ПРИМЕЧАНИЕ: это неверно, просто для иллюстрации другой схемы URL.

...