Не работает intent-filter в Android-приложении
Пытаюсь добиться того, чтобы по ссылке пользователь сразу открывал Android-приложение.
Что я сделал:
- Добавил
intent-filter
вAndroidManifest.xml
:
<activity
android:name=".ShareFolderActivity"
android:exported="true"
android:screenOrientation="portrait">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="test.mydomen.ru"
android:pathPrefix="/api/v1/folder/share/" />
</intent-filter>
</activity>
- Добавил в корень папки проекта на хосте папку
.well-known
; - В неё поместил файл
assetlinks.json
:
[
{
"relation": [
"delegate_permission/common.handle_all_urls"
],
"target": {
"namespace": "android_app",
"package_name": "com.example.myapp",
"sha256_cert_fingerprints": [
"мой ключ SHA256 в формате A1:B2:C3..."
]
}
}
]
Проблема:
При установке приложения кликаю по ссылке, к примеру в телеге:
https://test.mydomen.ru/api/v1/folder/share/
но ссылка открывается в браузере — т. е. intent
не срабатывает.
Захожу в "Приложения" → "О приложении" и вижу:
Захожу в "Открывать по умолчанию", а там всё включено (есть поддерживаемая ссылка):
После этого начинает открывать ссылку в приложении, но в "О приложении" по прежнему настройки по умолчанию не установлены.
В чём может быть причина такого поведения?