Firefox не запускает намерения для нажатых ссылок, как должен. Поэтому нельзя запустить их приложение, щелкнув ссылку в Firefox (что возможно в Chrome и других браузерах).
Изменить: помните, что это сообщение от 2013 года.
Желаемое поведение следующее: на моем веб-сайте у меня есть ссылка, при нажатии на которую должно запускаться мое приложение для Android. Если приложение не установлено, желательно открыть его страницу в Google Play для его загрузки.
Метод
Я реализую это с помощью «намеренного URI» в форме: intent://myhost.com/#Intent;scheme=myscheme;package=com.myapp;end
В приложении я регистрирую фильтр намерений в своем манифесте и прислушиваюсь к соответствию намерениям. Однако браузер должен запускать такое намерение при щелчке по ссылке, чтобы мое приложение могло запуститься.
Я тестировал этот метод в различных браузерах, и он работает в большинстве из них. За заметным исключением Firefox. В других браузерах либо мое приложение запускается, либо его страница в Google Play загружается (если оно не установлено на устройстве).
Метод с "намеренным URI" рекомендован Google. Он отлично работает в Chrome и некоторых других браузерах. Есть и другие способы. Я прочитал много тем и статей о возможностях. Основные альтернативы:
Альтернативные методы
- используя индивидуальную схему, например
myscheme://mywebsite.com
- используя обычную ссылку http, например
http://mywebsite.com
Альтернатива 1 не рекомендуется по двум причинам: - Я не владею такой схемой, она не существует глобально, это неверно. Google также использовал market://...
для запуска приложения Google Play, но они признали, что это неправильно и должно измениться. - Если мое приложение в настоящее время не установлено, оно не будет запущено, и в большинстве браузеров отображается страница с ошибкой, что явно нежелательно.
Альтернатива 2 не работает в большинстве браузеров и, похоже, устарела в пользу метода «намеренного URI».
В частности, Firefox
работает только с нестандартной схемой (вариант 1). В случае обычной http-ссылки (вариант 2) он просто загружает ссылку и показывает веб-сайт. В случае рекомендуемого метода «URI намерения» он ничего не делает. Фактически, он показывает диалоговое окно с вопросом, хотите ли вы запустить приложение, но когда вы нажимаете Да, ничего не происходит. Кажется, Firefox распознает ссылки типа «intent://...
», но не обрабатывает их должным образом.
В: Каков рекомендуемый метод запуска приложения по ссылке в Firefox? Почему метод «URI намерения» не поддерживается Firefox?
Ссылки по теме: https://developers.google.com/chrome/mobile/docs/intents https://stackoverflow.com/a/3472228/1045941 (имейте в виду, что поток довольно Старый)
intent:
: bugzilla.mozilla.org/show_bug.cgi?id=851693 - person Jarett Millard   schedule 03.11.2016