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

В этом руководстве описаны распространённые проблемы и способы их устранения. Вы также можете воспользоваться инструментами устранения неполадок на странице «Глубокие ссылки» в 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 App Signing). Подпись должна быть написана заглавными буквами.
    • Проверьте autoVerify : убедитесь, что <intent-filter> в вашем AndroidManifest.xml включает android:autoVerify="true ".
    • Проверьте наличие перенаправлений на стороне сервера : перенаправления с http на https или с домена без www на www могут привести к сбою проверки.
    • Принудительная повторная проверка : выполните команды ADB в руководстве Test App Links, чтобы получить новый результат проверки.

Динамические правила на 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 должна быть написана строчными буквами.
  • Если вы используете функцию подписания приложений Google Play, убедитесь, что вы используете подпись, которую Google использует для каждого вашего релиза. Вы можете проверить эти данные, включая полный фрагмент JSON-кода, следуя инструкциям по объявлению связей с веб-сайтами .