Шаблон пути Android в глубоких ссылках - PullRequest
0 голосов
/ 01 января 2019

Я пытаюсь встроить глубокую ссылку в свое приложение.Шаблон пути, который мне нужно поддерживать, выглядит примерно так:

URL-адреса: www.host.com/somestring-<2letters>/ пример: хороший URL-адрес: www.host.com/Portland-OR/ Неверные URL-адреса: www.host.com / Portland-, www.host.com/-OR, www.host.com/-, www.host.com/Por-O

Итак, у меня есть набор буквенно-цифровых наборовсимволы длиной не менее 1 символа.Тогда у меня есть "-", а затем точно 2 символа.Я попытался

<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />

            <data android:scheme="http" android:host="host.com" android:pathPrefix="/.*-.*/" />
        </intent-filter>

Я прочитал следующий документ и исходный код, а также.https://developer.android.com/reference/android/os/PatternMatcher

Любая помощь будет принята с благодарностью.Спасибо!

1 Ответ

0 голосов
/ 01 января 2019

Вы не можете сделать это статическим способом в AndroidManifest.xml, но вы можете написать свой собственный программный сопоставитель шаблонов в коде в <activity> или любом другом компоненте, содержащем <intent-filter>, извлекая экземпляр Uri с помощьюintent.getData() и использование регулярных выражений или просто дешевое разбиение по символу - и проверка второй части.

...