Как перезапустить приложение, как это делает facebook-ios-sdk? - PullRequest
2 голосов
/ 26 января 2012

Вопрос:

Я сам активно просматриваю исходный код проекта Github на facebook-ios-sdk, но мне было интересно, знает ли кто-нибудь, как перезапустить приложение, которое отправилоПользователь iPhone в Safari, чтобы пользователь мог вернуться после завершения работы?

Пример:

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

Мотивация:

Я хотел бы иметь возможность сделать то же самое для видео на YouTube без полной потери пользователя,Я не хочу использовать стандартный подход к веб-просмотру, потому что я не хочу предоставлять дополнительное пространство, чтобы сначала позволить пользователю загружать видео, а затем дать пользователю нажать кнопку воспроизведения.Я хочу полностью пропустить кнопку воспроизведения и связанный с ней щелчок!Вместо этого я хочу, чтобы пользователь мог нажимать только на обычную обычную кнопку iPhone и показывать видео с навигацией для возврата в приложение через повторный запуск.

1 Ответ

4 голосов
/ 26 января 2012

Вам необходимо ваше приложение, чтобы зарегистрировать «пользовательскую схему URL».Затем получите обратный вызов в удаленном веб-сервисе, чтобы вернуть URL с этой схемой.После этого iOS запустит ваше приложение.

  • Более (немного устаревшая) информация доступна здесь.
  • Список общих пользовательских схем URL на iOS можно найти здесь.

Обычно, как часть процесса входа в OAuth, вы предоставляете URL обратного вызова в качестве одного из параметров.Для этого необходимо сообщить удаленному серверу (YouTube), что при успешной аутентификации перенаправить пользователя на указанный URL-адрес.Если YouTube поддерживает это (поддерживает ли OAuth?), То при успешном входе пользователя в систему через safari youtube сообщит пользователям safari о перенаправлении на указанный URL-адрес.Если этот URL является «пользовательской схемой URL», это приведет к повторному запуску вашего приложения, и вы сможете справиться с ситуацией.

...