UniversalLink перестает работать на устройствах iOS 14

У меня есть приложение, поддерживающее UniversalLink. Пользователь щелкает поддерживаемые ссылки на веб-сайте, и вы переходите к функциям приложения.

Но это не сработало в бета-версии 4 iOS 14. Вместо того, чтобы открывать приложение, оно открывает страницу в режиме чтения.

После исследования, как я вижу из документа здесь https://developer.apple.com/documentation/bundleresources/entitlements/com_apple_developer_associated-domains

Необходимо обновить Service.entitlements для поддержки iOS 13 и iOS 14.

<Key>com.apple.developer.associated-domains</key>
  <array>
    <string>applinks:hosturl</string>
    <string>applinks:hosturl?mode=developer</string>
 </array>

На тренажере работает хорошо. Но я не могу заставить его работать на устройствах. Каждый может помочь в этом.

3 ответа

Если вы хотите открыть приложение в среде разработки, вы должны:

Шаг 1. Укажите связанные домены

служба: полностью квалифицированный_домен? режим = альтернативный режим

пример: applinks:YOUR_DOMAIN?mode=developer

Шаг 2. Включите разработку связанных доменов на устройстве

На тестовом устройстве вам необходимо активировать настройку Associated Domain Development, которая находится в: Setup -> Developer

Настройки

Разработчик

Формат также изменился для устройств iOS14. Это означает, что ассоциация "яблоко-приложение-сайт" должна находиться как в корневой папке вашего веб-сайта (для устройств до iOS9.3, если поддерживается), так и в хорошо известной папке.

<YOUR_URL> / apple-app-site-association
<YOUR_URL>/.well-known/apple-app-site-association

Новый формат предназначен для поддержки устройств до iOS14 и iOS14.

      {
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "<YOUR_APP_ID>",
        "components": [ // iOS14
          {
            "/": "<URL_PATH>",
            "comment": "Matches any URL whose path starts with URL_PATH and instructs the system not to open it as a universal link"
          }
        ],
        "paths": [ // pre iOS14
          "NOT \/api\/*",
          "NOT \/",
          "<URL_PATH>"
        ]
      }
    ]
  }
}

дополнительная информация: https://developer.apple.com/documentation/safariservices/supporting_associated_domains

Укажите связанные домены (полностью квалифицированный домен)

пример:

           applinks:domain.com //  wrong 


     applinks:www.domain.com // right
Другие вопросы по тегам