Настройки ссылок на приложения для Android. Как установить URL ссылки на приложение, всегда открытый в этом приложении? - PullRequest
0 голосов
/ 14 сентября 2018

Android представила App Links with Android 6.0 Marshmallow, чтобы обеспечить более безопасный способ запуска конкретного приложения по ссылке (https).

Кроме того, я думал, что ссылки на приложения для Android охватывают основные уязвимости, обнаруживаемые пользовательскими схемами.

Одной из основных уязвимостей является то, что вредоносное приложение ожидает перехвата того же URL-адреса с помощью аналогичного фильтра намерений. И тогда ОС покажет пользователю «Неоднозначный диалог», чтобы выбрать, в каком приложении открывать ссылку.

См .: Измерение ненадежности мобильных глубоких ссылок Android

URL-адрес ссылки на приложение должен перенаправлять пользователя прямо в приложение, если ссылка на приложение настроена правильно в соответствии с документацией для Android AppLinks .

Однако я обнаружил, что это не всегда так. Для некоторых устройств может отображаться «Неоднозначный диалог» при первом использовании URL-адреса ссылки на приложение.

Почему ?

Эта странная настройка называется «Перейти к поддерживаемым URL-адресам» в разделе «Настройки приложения» -> «Установить по умолчанию» под подзаголовком «Ссылки на приложения», от которого зависит ссылка на приложение. Этот параметр позволяет пользователю изменять поведение ссылки на приложение. Это дает три варианта, как показано ниже.

  • В этом приложении
  • Всегда спрашивай
  • В другом приложении

image image

Самое странное, что значение по умолчанию для этого параметра будет отличаться от устройств каждого производителя.

Если настройка не «В этом приложении», то ОС покажет «Неоднозначный диалог» хотя бы с вашим собственным приложением и браузером.

Вопрос

  1. Есть ли способ предотвратить изменение настройки (предотвратить перехват URL-адреса любым другим приложением)?
  2. Есть ли способ установить значение по умолчанию «В этом приложении» или программно изменить значение «В этом приложении», чтобы предотвратить его перехват другими приложениями?
...