Appy

Диплинки

Что такое Android App Links?

Коротко

Android App Links — https-ссылки, которые Android, начиная с версии 6.0, открывает сразу в приложении, без окна «Открыть с помощью». Для этого домен подтверждает связь с приложением: в манифесте стоит intent filter с android:autoVerify="true", а на сайте лежит assetlinks.json с именем пакета и SHA-256-отпечатками сертификата подписи.

Как проходит проверка

После установки Android запрашивает /.well-known/assetlinks.json на каждом домене из intent filter и сверяет имя пакета и отпечаток сертификата, которым подписано приложение. Совпало — ссылки домена открываются в приложении. Нет — в браузере. С Android 12 непроверенная ссылка даже не показывает окно выбора приложения.

Самая частая ошибка

В файле указан отпечаток ключа, которым команда подписывает сборку у себя, но нет отпечатка ключа Play App Signing. Приложение из Google Play подписано именно ключом Google, и проверка не проходит. Отпечаток этого ключа есть в Play Console — его нужно добавить в sha256_cert_fingerprints.

Как проверить

Команда adb shell pm get-app-links с именем пакета показывает статус проверки для каждого домена. Статус verified значит, что всё в порядке и ссылки будут открываться в приложении. Если статус другой, проверьте файл: редиректы, тип содержимого, имя пакета и отпечатки. После исправления проверку можно перезапустить командой adb shell pm verify-app-links --re-verify.

ПримерСтатус проверки через adb
adb shell pm get-app-links com.example.app
ПодробнееAndroid App Links не проходят проверку: диагностика за пять минут с adbЧеклист adb, который быстро находит, почему App Link открывается в браузере.
  • Файл assetlinks.json

    assetlinks.json — файл Digital Asset Links по адресу https://<домен>/.well-known/assetlinks.json. Он сообщает Android, какому приложению доверено открывать ссылки домена: в нём указаны отношение delegate_permission/common.handle_all_urls, имя пакета (package_name) и SHA-256-отпечатки сертификата подписи. Без этого файла Android App Links не пройдут проверку, и ссылки будут открываться в браузере.

  • Universal Links

    Universal Links — обычные https-ссылки, которые на iPhone и iPad открывают установленное приложение вместо сайта. Apple ввела их в iOS 9. Нужны две части: entitlement Associated Domains в приложении (applinks:example.com) и файл apple-app-site-association на домене. Если приложения нет, по той же ссылке откроется сайт.

  • Intent URL

    Intent URL — формат ссылок, который понимает Chrome на Android: intent://…#Intent;scheme=…;package=…;end. Если приложение установлено, ссылка открывает его. Если нет, Chrome переходит по адресу из параметра S.browser_fallback_url, а без него открывает страницу приложения в Google Play. Одна ссылка работает и с приложением, и без него.

Все термины глоссария

Одна ссылка на App Store, Google Play и сайт

На бесплатном тарифе Appy — 4 ссылки с QR-кодами. Каждый телефон попадает в свой магазин: App Store, Google Play, AppGallery, Galaxy Store или GetApps, а компьютер — на сайт. Без рекламы и без банковской карты.