2011-01-25 5 views
0

Я собираюсь разработать приложение для iPhone.Помогите мне запустить приложение для iPhone

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

Возможно ли запустить приложение iPhone из другого приложения для iPhone?

Если возможно, сообщите мне ваши данные об этом.

Спасибо за любую помощь.

ответ

4

[копировать и вставлять из предыдущего ответа я дал here за клик склонного]

Вы можете использовать схему URL-адрес, встроенную в IOS. Например, вы могли бы назвать Safari с URL, потому что он зарегистрирован в качестве приложения, которое обрабатывает Схему http URL

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

Метод openURL: является методом экземпляра одноплодного экземпляра UIApplication, на котором вы можете назвать любое приложение который регистрирует в своем plist способность обрабатывать какие-то входные данные.

Here's a list of common url schemes in iOS.

Малоизвестный способ обнаружить существование другого приложения на устройстве, чтобы использовать canOpenURL: на том же одноплодной например:

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"cydia://"]]) 
{ 
    NSLog(@"cydia installed"); 
} 
else 
{ 
    NSLog(@"cydia not installed"); 
} 
+0

У меня есть sampleApp в моем симуляторе, но когда я запускаю ваш код выше, он всегда возвращается не установлен. Почему это происходит? – user198725878

+0

Вам нужно изменить 'cydia: //' в приведенном выше коде на приложение, которое вы хотите протестировать. Если вы хотите узнать, установлен ли Safari (т. Е. Он есть), измените его на «http: //». –

+0

если ([[UIApplication sharedApplication] canOpenURL: [NSURL URLWithString: @ "MyApp: // SampleApp"]]) \t \t \t { \t \t \t \t NSLog (@ "установлен Cydia"); \t \t \t \t NSString * stringURL = @ "myapp: // sampleApp"; \t \t \t \t NSURL * url = [NSURL URLWithString: stringURL]; \t \t \t \t [[UIApplication sharedApplication] openURL: url]; \t \t \t} \t \t \t еще \t \t \t { \t \t \t \t NSLog (@ "Cydia не установлен"); \t \t \t} Теперь он показывает, что он установлен. Но не открывается это приложение. PLS помочь мне. – user198725878

1

Только если это приложение уже установлено и запущено и было разработано для регистрации собственного обработчика URL-адресов для себя с ОС.

Приложение может запускать его с помощью этой настраиваемой схемы URL.

+0

спасибо за ответ ... да другое приложение уже установлен. Вы можете показать мне пример кода, каким он может быть. – user198725878

+0

Знаете ли вы, что зарегистрированная пользовательская схема URL-адреса приложения? – hotpaw2

1

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

1

Когда пользователь нажимает на кнопку, текущее приложение будет закрыть и запустить новое приложение ..

Да .. Его можно .. НО вы должны знать «короткую ссылку» другого приложения .. Я пытался это раньше, и даже успешно перенесены данные из облегченной версии до полной версии ..

его называют схему URL ..

Вот ссылка: http://www.idev101.com/code/Objective-C/custom_url_schemes.html

Надеется, что это может добиться того, что вы хотите ..

Смежные вопросы