Открытие внешнего приложения внутри моего приложения - PullRequest
0 голосов
/ 15 февраля 2012

Могу ли я вызвать другие установленные приложения в моем приложении? Предположим, что я установил AngryBirds, я должен вызвать это приложение, нажав кнопку из моего приложения. Возможно ли это?

Ответы [ 4 ]

1 голос
/ 15 февраля 2012

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

NSString *contactName = @"user123";
NSURL *skypeURL = [NSURL URLWithString:[NSString stringWithFormat:@"skype://%@?call",    contactName]];
if ([[UIApplication sharedApplication] canOpenURL:skypeURL]) {
    [[UIApplication sharedApplication] openURL:skypeURL];
} else {
    // Display to the user how to install skype.
}

, то же самое может произойти для других программ.с определением протокола, которое можно понять.

И всего 4 записи, вот список известных схем URL http://wiki.akosma.com/IPhone_URL_Schemes

Затем, если вы хотите, чтобы ваше приложение было URL-схемойСовместимость, вы можете хорошо начать, прочитав это: http://www.idev101.com/code/Objective-C/custom_url_schemes.html, и этот другой пост действительно хорош и подробен.

Как настроить приложение Cocoa в качестве веб-браузера по умолчанию?

в нем объясняется, как заставить ваше приложение обрабатывать пользовательскую схему URLSheme, которая, как оказалось, подходит именно вам.

надеюсь, что это может быть полезно.

k

для других сценариев, я не знаю, возможно ли это.

0 голосов
/ 15 февраля 2012

Нет. Невозможно открыть другое приложение в приложении. Однако вы можете открыть другое приложение из вашего приложения, наоборот, используя

  1. URL Scheema

  2. Функциональность Open_In с использованием CFBundleDocumentTypes и UIDocumentInteractionController.

0 голосов
/ 15 февраля 2012

Невозможно, потому что все приложения iphone будут выполняться в отдельном процессе с собственной средой выполнения.Доступен только ограниченный IPC (межпроцессный обмен данными), что также для системных библиотек и ресурсов.

0 голосов
/ 15 февраля 2012

Нет, это невозможно сделать, если рассматриваемые приложения не поддерживают схему URL, тогда вы можете запустить ее с помощью URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...