Универсальная ссылка не работает со ссылками на веб-страницу - PullRequest
0 голосов
/ 03 июля 2019

Я знаю, что есть много похожих вопросов по этому вопросу, и я старался изо всех сил, следуя многим из них, но все же моя проблема остается нерешенной. Любая помощь будет оценена.

У меня есть сервер AWS под управлением ASP.NET MVC, и я поместил файл apple-app-site-association в папку .well-known (с соответствующим Web.config для назначения типа mime). Я не думаю, что в этой части истории есть неправильная конфигурация по следующим причинам:

  1. Я смотрю журнал консоли iPhone при установке моего приложения, и он не сообщает об ошибке при доступе к файлу apple-app-site-association.
  2. Если я вставлю ссылку в заметку, нажав на эту ссылку, она откроет мое приложение напрямую (без запроса).
  3. Когда я сканирую QR-код, содержащий URL-адрес ссылки, он запрашивает использование моего приложения для его открытия.

Однако, если у меня есть веб-страница с той же ссылкой, использующей элемент <a href="...">, когда я открываю эту страницу с помощью Safari или Chrome, нажатие на эту ссылку даже не запрашивает мое приложение; он просто открывает ссылку внутри браузера. Независимо от того, как я пытался, я не могу сделать такие ссылки, чтобы открыть свое приложение.

У меня проблемы с тестированием моего URL с помощью Validation Tool , но я не могу понять, почему. В нем просто говорится: «Не удалось извлечь необходимую информацию для ссылок приложений» без какой-либо дополнительной информации, которая может помочь мне определить проблему. Кроме того, почему этот тест не проходит, а 2. и 3. выше работает? Я не понимаю.

Кроме того, я прошел тест в Филиал .

URL-адрес рассматриваемой ссылки является https-URL-адресом с тем же доменом, что и веб-страница, на которой он находится.

Одна вещь, которую я, вероятно, должен упомянуть: при доступе к этому URL-адресу сервер ответит на перенаправление на стороне сервера (в App Store или Google Play в зависимости от User-Agent). Я также пытался изменить этот URL, чтобы он отвечал на обычную веб-страницу, содержащую перенаправление на стороне клиента, но это не имеет значения. Ссылка на моей веб-странице по-прежнему открывается внутри браузера, а не открывается мое приложение. На этой новой странице с перенаправлением на стороне клиента мне будет предложено, если я захочу открыть App Store, и если я выберу нет, а затем немного перетащу страницу вниз, я действительно увижу опцию «Открыть в приложении ***». «показать (еще одно доказательство того, что все должно быть правильно), но это не то, чего я хочу; Я хочу, чтобы ссылка открывала мое приложение (например, в Instagram и т. Д.).

1 Ответ

0 голосов
/ 05 июля 2019

После двух дней дальнейших раскопок я наконец нашел ответ.Проблема именно в том, что веб-страница, содержащая ссылку и URL-адрес ссылки, принадлежит одному домену.Согласно этой странице (хотя на китайском языке), начиная с iOS v.9.2, универсальная ссылка открывала мое приложение напрямую, без запроса, только если страница и ссылка НЕ ​​принадлежат одному домену.Это означает, что использование другого субдомена также будет работать, и это так, как я только что попробовал.

Это также говорит о том, что не нужно слишком беспокоиться об официальном Validation Tool ;провал теста там не обязательно означает, что вы делаете что-то не так.

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