Отправить пользователя в Safari и выполнить поиск по настроенному поисковому провайдеру на iPhone? - PullRequest
3 голосов
/ 12 июля 2010

Я хотел бы иметь возможность отправить пользователя из моего приложения в Safari, как если бы он выполнил поиск по некоторым терминам, которые я предоставляю.Я понимаю, что мог бы создать URL для поиска в Google и отправить их туда, однако у пользователя есть возможность настроить одну из нескольких поисковых систем, и я хотел бы использовать тот, который они выбрали, а не Google.

Есть ли способ сделать это?

1 Ответ

4 голосов
/ 14 июля 2010

Я почти уверен, что это невозможно.

На iPhone вы запускаете другие приложения, используя собственную схему URL.Хороший список их можно найти здесь: http://wiki.akosma.com/IPhone_URL_Schemes

Так, например, для запуска Safari:

NSString *stringURL = @"http://my.url.com/";
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];

Затем iPhone решает запустить Safari, так как используется схема URL * 1009.* HTTP .Как вы сказали в своем вопросе, вы можете просто использовать правильный URL для запуска поисковой системы, поэтому для Google:

http://www.google.com/search?q=MY_SEARCH_TERM

Что было бы идеально, было быесли Apple предоставила схему URL, такую ​​как search: // , которая запустила запрос в поисковой системе.Однако, к сожалению, это не реализовано.

Я думаю, что лучший способ «решить» вашу проблему - позволить пользователю выбирать, какую поисковую систему он хотел бы использовать в вашем приложении.Затем при запуске Safari вы можете использовать соответствующий URL.Дополнительным бонусом является то, что вы также можете включить поисковые системы, которых нет у Apple.

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