Устранение неполадок со ссылками приложений

В этом руководстве описаны распространенные проблемы и способы их устранения. Вы также можете использовать инструменты устранения неполадок на странице «Глубокие ссылки» в Play Console или в помощнике по ссылкам приложений Android Studio. Для получения дополнительной информации см. раздел «Инструменты разработчика для ссылок приложений» .

  • Проблема : Вы нажимаете на ссылку, которая должна открыть ваше приложение, но она открывается в веб-браузере или отображает диалоговое окно уточнения.
  • Решение :
    • Проверьте файл assetlinks.json : убедитесь, что файл является допустимым JSON-файлом, доступен по https://<your-domain>/.well-known/assetlinks.json и передается по HTTPS без перенаправлений. Используйте онлайн-валидатор.
    • Проверьте отпечаток SHA-256 : Дважды проверьте, что значение sha256_cert_fingerprints в assetlinks.json точно соответствует отпечатку ключа подписи для вашего релиза приложения (используйте ключ из Play Console, если вы используете функцию подписи приложений Play). Подпись должна быть написана заглавными буквами.
    • Проверьте autoVerify : убедитесь, что в вашем AndroidManifest.xml в <intent-filter> указано android:autoVerify="true ".
    • Проверьте наличие перенаправлений на стороне сервера : перенаправления с http на https или с домена без www на www могут привести к сбою проверки.
    • Принудительная повторная проверка : выполните команды ADB из руководства по проверке ссылок приложения , чтобы получить актуальный результат проверки.

Динамические правила в Android 15 и выше не обновляются.

  • Проблема: Вы обновили правила в файле assetlinks.json , но новые ссылки не обрабатываются приложением.
  • Решение :
    • Принудительная повторная проверка : Самый надежный способ проверить изменения — это принудительно выполнить повторную загрузку с помощью adb shell pm verify-app-links --re-verify. <your-package-name> `.
    • Проверьте наличие опечаток : Внимательно проверьте синтаксические ошибки в ваших правилах, используя сопоставители шаблонов.
    • Проверьте правила фильтрации манифеста : просмотрите правила фильтрации намерений в манифесте приложения, чтобы убедиться, что путь к ссылке не отфильтровывается. Если ссылка отфильтровывается, сделайте фильтр намерений в манифесте приложения менее строгим.

Исправлены распространённые ошибки реализации.

Если вы не можете проверить ссылки на ваше Android-приложение, проверьте наличие следующих распространенных ошибок. В этом разделе example.com используется в качестве доменного имени-заполнителя; при выполнении этих проверок замените example.com фактическим доменным именем вашего сервера.

Неправильная настройка фильтра намерений.
Проверьте, не содержите ли вы в элементе <intent-filter> URL-адрес, который не принадлежит вашему приложению.
Неправильная конфигурация сервера

Проверьте JSON-конфигурацию вашего сервера и убедитесь, что значение SHA указано правильно.

Также убедитесь, что example.com. (с точкой в ​​конце) отображает тот же контент, что и example.com .

Перенаправления на стороне сервера

Система не проверяет ссылки на Android-приложения, если вы настроили перенаправление, например, следующим образом:

  • http://example.com на https://example.com
  • example.com на www.example.com

Такое поведение обеспечивает безопасность вашего приложения.

Надежность сервера

Проверьте, могут ли ваши клиентские приложения подключаться к вашему серверу.

Непроверяемые ссылки

В целях тестирования вы можете намеренно добавлять непроверяемые ссылки. Имейте в виду, что на Android 11 и более ранних версиях эти ссылки приводят к тому, что система не проверяет все ссылки на приложения Android для вашего приложения.

Неверная подпись в файле assetlinks.json

Убедитесь, что ваша подпись верна и совпадает с подписью, использованной для подписи вашего приложения. Распространенные ошибки включают:

  • Подписание приложения с помощью отладочного сертификата и наличие в файле assetlinks.json только подписи релизной версии.
  • Подпись в файле assetlinks.json должна быть написана строчными буквами.
  • Если вы используете функцию подписи приложений Play, убедитесь, что используете подпись, которую Google использует для подписи каждого вашего релиза. Вы можете проверить эти данные, включая полный фрагмент JSON, следуя инструкциям по объявлению связей с веб-сайтами .