2016-05-15 3 views
0

Я пытаюсь запустить свое приложение, если оно установлено и отступит от моего веб-сайта, если приложение не существует. (Есть некоторые идеи из: How to check if an app is installed from a web-page on an iPhone?Запуск приложения из браузера

я смог запустить приложение, используя собственную схему URL-адрес, но только был в состоянии поэтому, когда есть взаимодействие с пользователем (например, пользователь нажимает на кнопку/ссылку):

<a onclick="window.open('myapp://foo=bar', '_system')">Launch myapp</a> 

Однако при использовании

window.open ('MyApp: // Foo = бар', '_System');

или

window.location = 'MYAPP: // Foo = бар'

без взаимодействия с пользователем (например, при загрузке окна/готовом документе) приложение не запускается.

Ожидается ли это?

Любые обходные пути?

Благодаря Саги

+1

Ожидается. Если пользователь использует браузер, то они используют браузер. Если вы хотите, чтобы они использовали ваше приложение, просто укажите кнопку с настраиваемым URL-адресом, на который они будут нажимать. – adelphus

ответ

1

Thats ожидается. Сначала необходимо выполнить взаимодействие с пользователем, прежде чем делать звонок до window.open(). Это невозможно сделать программно.

Что-то еще, что вы можете посмотреть, это Universal Links. Такой подход к запуску приложения через обычную ссылку http: // - это новый предпочтительный подход, а не использование схем URL. С Universal Links вам не нужно обрабатывать логику, чтобы определить, установлено ли приложение. Его обрабатывают автоматически. Все крупные компании используют этот подход. Посмотрите также blog.

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