2014-02-18 1 views
2

Я новичок в iOS и объекте C. Мне нужно создать простое приложение, в котором пользователь нажмет кнопку, и в результате приложение откроет сафари. Затем пользователь снова должен вернуться к моему приложению. Я открыл сафари, но я не знаю, как вернуть пользователя в мое приложение. Я использовал этот простой код:Открыто Safari, нажав кнопку, как я могу вернуться к моему приложению

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

Любое предположение, что я могу это сделать?

+0

Я думаю, что это невозможно архивировать, если перенаправление не вернулось в ваше приложение. –

+0

Для этого вам потребуется использовать специальную схему URL. – GenieWanted

+0

Я прочитал о схемах пользовательских URL-адресов, но не смог его использовать. – iBug

ответ

2

При открытии URL с помощью

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

Вашей ОС заботится о загрузке нового приложения. Вместо этого, если вы хотите загрузить веб-URL, используйте класс UIWebView.

+0

Я не могу использовать UIWebView – iBug

+0

Но в чем преимущество перехода на сафари через веб-просмотр? – Rajesh

0

Я думаю, что вы не можете сделать это, только на собственных URLs вслед за этим:

Прежде всего, вы хотите собственную схему. https://coderwall.com/p/mtjaeq

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

Теперь, потому что URL-адрес является точка на вашем собственном сервере, вы можете перенаправить с помощью схемы, которые вы создаете, например. myapp://.

В вашем сервере, в file.php, если вы установите:

<script type="text/javascript">location.href="myapp://"</script> 

Тогда будет вернулся в свое приложение.

+0

Что делать, если я пытаюсь открыть Google? – iBug

+1

Я думаю, что это невозможно. Кто-нибудь исправит меня, если я ошибаюсь. На самом деле у него должен быть спусковой механизм для этого. Как Google запустит это и вернется в ваше приложение? –

0

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

Если вы хотите напомнить им о возвращении, вы можете запланировать UILocalNotification, чтобы появиться через несколько секунд после открытия URL-адреса - если они коснутся этого, они будут возвращены в ваше приложение. Это будет отображаться на экране как предупреждение или баннер в зависимости от текущих настроек пользователя.

+0

Но это может раздражать пользователя, если он еще не закончен и не хочет возвращаться в приложение. – iBug

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