iOS AppLinks только не работают из почтового приложения
Мы находимся в процессе создания нового приложения, и у меня возникли некоторые проблемы с использованием ссылок на приложения.
Итак, я добавил права и размещаю на своих серверах файл ".well-known/apple-app-site-association", который, кажется, все в порядке.
Затем я тестирую приложения, запуская их на своем симуляторе с помощью этой команды:
Затем я начал тестирование на реальных устройствах, и внезапно это перестало работать, я использую почтовое приложение по умолчанию на этих устройствах, и вот в чем проблема.
Если я помещаю ссылку в заметку (приложение «Заметки»), она открывает мое приложение. Если я открываю свою электронную почту из приложения GMail, оно запускает мое приложение, но точно такое же электронное письмо из той же учетной записи gmail, но внутри приложения Apple Mail ничего не делает ...
Я пробовал это прямо сейчас и на iOS 13, и на iOS14.
Содержимое размещенного файла ассоциации яблочного приложения-сайта выглядит следующим образом:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "0000X0XXXX.com.domain.appname",
"paths": ["*"]
}
]
},
"webcredentials": {
"apps": [ "0000X0XXXX.com.domain.appname" ]
}
}
Приветствуются любые идеи о том, что мы можем попробовать дальше. Единственное, что я могу себе представить, это то, что приложение Mail выполняет дополнительные проверки того, находится ли ваше приложение в AppStore или нет, но это было бы немного странно, нет ?!
1 ответ
Хорошо, я нашел проблему и исправил ... На самом деле это не так сложно, и я случайно наткнулся на это ...
Кажется, что Apple очень плохо справляется с парсингом HTML, в частности атрибута ссылки. Хотя я не смог найти другого клиента, который ведет себя так же, кажется, что если вы не поместите схему (http или https) перед URL-адресом (поэтому вместо https://google.com я использовал просто google.com), которые вы предоставляете
href
атрибут, то Apple делает из него что-то свое:
x-webdoc://30E09690-F388-4ED2-BB46-14DC829B974C/google.com
. Я мог заметить это в приложении Apple Mail, однако на iPhone, где у меня возникла проблема, это даже не было распознано как ссылка, поэтому поведение, похоже, немного отличается в их собственных приложениях.
В конце концов, это была моя ошибка, что я не поставил
https://
перед моим автоматически сгенерированным URI. Однако я думаю, что Apple плохо справляется с созданием HTML-тега ссылки.