как открыть приложения для iphone через phonegap - PullRequest
3 голосов
/ 21 октября 2011

Я хочу открывать приложения iphone, такие как «Контакты» и «Календарь», из моего приложения с пробелом в телефоне, я не против, чтобы это привело к тому, что мое приложение окажется в фоновом режиме.Я могу открыть браузер и использовать window.open, но как мне открыть другие приложения?

Например, window.open("contacts://", '_blank'); не работает

Ответы [ 5 ]

3 голосов
/ 21 октября 2011

Единственный способ, с помощью которого одно приложение, основанное на PhoneGap или иным образом, может запустить другое приложение, - это открыть URL-адрес, использующий пользовательскую схему URL целевого приложения. Так что, если приложение «Контакты» поддерживает какую-то собственную схему, вам повезло. Если нет, вам не повезло.

1 голос
/ 11 сентября 2013

Как уже отвечали ранее, использование схемы URL может работать.Если у вас есть несколько приложений и вы хотите иметь возможность открывать одно из другого, то при использовании сборки PhoneGap это действительно просто: вам просто нужно добавить схему URL в файл config.xml , например:

// In config.xml
<gap:url-scheme>
    <scheme>app1scheme</scheme>
</gap:url-scheme>

Тогда из вашего другого приложения вы просто получите ссылку на app1scheme://, например, просто

<a href="app1scheme://">Start App1</a>
1 голос
/ 22 октября 2011

Вам понадобится написать собственный плагин для телефонной пробки, чтобы вы могли получить доступ к пользовательским методам, которые вы пишете в задаче C.

Официальная документация по телефонному зазору здесь .
Я кратко объясню, как вы это сделаете.
В вашем javascript вы назовете этот код:

 PhoneGap.exec("OpenMailAppPlugin.openMailApp",parameter1);

В задании C вы создадите новый файл класса OpenMailAppPlugin. Прочитайте ссылку выше для точных инструкций, но важный метод будет примерно таким.

-(void) openMailApp:(NSMutableArray*)paramArray withDict:(NSMutableDictionary*)options {
            NSString *parameter1 = [paramArray objectAtIndex:0]; //recieves information from javascript function

           NSURL* mailURL = [NSURL URLWithString: @"mailto:%@?cc=bar@example.com&subject=Greetings%20from%Cupertino!&body=Wish%20you%20were%20here!",paramter1];
      [[UIApplication sharedApplication] openURL: mailURL];
 }

Кроме того, вас может заинтересовать отправка информации назад в ваше приложение для телефонной связи. Вы можете сделать это, вставив вызов JavaScript, который отправляет параметры. В вашей целевой функции C вы бы сделали что-то вроде этого.

 NSString * jsCallBack = [NSString stringWithFormat:@"myJavascriptFunction('%@');",parameter];    
        [self.webView stringByEvaluatingJavaScriptFromString:jsCallBack];
0 голосов
/ 21 марта 2016

Вот список всех URL-адресов приложений для iOS / iPhone

  1. Видео - видео:
  2. Музыка - музыка:
  3. Youtube - youtube.com
  4. iTunes store - itms:
  5. iBooks - itms-books:
  6. App Store - itms-apps:
  7. Отправка почты - mailto:
  8. Телефон - тел:

Более подробную информацию можно найти по этой устаревшей ссылке http://www.wiki.akosma.com/IPhone_URL_Schemes

Посмотрите, как вы можете реализовать свой URL
https://appurl.org/docs-handling-android

0 голосов
/ 13 апреля 2013

Нужно использовать плагин, к сожалению, вам нужен собственный код ios:

Этот работает: https://github.com/phonegap/phonegap-plugins/tree/master/iOS/ExternalFileUtil

...