Откройте мое приложение для определенного файла и расширения URL-адреса - фильтр намерений не работает должным образом

Вопрос:

Как я могу заставить свое приложение открыть файл и расширение URL, безусловно?

Я в своем умеконец с настройкой моегоintent-filter поскольку ничего из этого не имеет никакого смысла. Моя конечная цель - открыть все, что имеетpath заканчивается определенным продолжением. Для примера, давайтевыбрать ".riley» как расширение моей цели.

Моя база `интент-фильтр`

    

    
    

    

В настоящее время это работает, чтобы открыть изfile а также .content

Проблема № 1: pathPattern

Для начала, это некажется, чтоdata параметрpathPattern делает что-нибудь, как я установил:


.. но я все еще могу открытьIntentсUri дорожки, которые не заканчиваются.riley» подfile а такжеcontent схема.

Несколько примеров путей, которые мое приложение открыло с помощью этогоintent-filter являются:

Path: /storage/sdcard0/Download/MyApp.apk Path: /messagesByAccount/1

"Дорожка: " было просто мое добавление в журнал для ясности. Первый из Gmail подfile схема и вторая от gtalk подcontent схема. Учитывая это, я уже запутался в том, какintent-filters Работа.

pathPattern игнорируется наfile а такжеcontent схем.

Проблема № 2: Открытие в браузере

я пытался открыть мое приложение ".riley» расширения из браузеров, однако перенаправления ссылок неу меня нет MIME-типа, поэтому я удалилmimeType значение изdata шаблон (у меня былandroid:mimeType="*/*" ранее, так как MIME-тип неЭто согласуется), и это позволило мне нормально открывать URL-адреса перенаправления.

Проблема возникла, когда я попытался открыть прямой.riley» URL из браузера (например:http://thisisnotarealdomainname.com/myfile.riley) и возможность открыть из моего приложения пропала. ДобавлениеmimeType значение обратно к моемуdata Шаблон позволил мне открыть с прямого URL.

intent-filter победил'Позвольте мне открыть как прямые, так и косвенные ссылки.

Выпуск № 3: схема

Я хотел бы иметь возможность открывать из нескольких различных типов схем (например:http,файл,содержание), but as soon as I removeсхемаaltogether, it disqualifies my application from opening theHTTPscheme and when I specifyсхема = "*", it disqualifies my application from opening ANY scheme. I've also tried adding moreпаттерны данных, но я чувствую, как будто только один из них вступил в силу, как это не делаетмне вообще не поможет

Итак, указавhttp позволитhttp, но очевидно додумалсят разрешено либоfile или жеcontent и не указавscheme отключаетhttp

Я не могу открыть из всех разных схем.

Повторить,как я могу получить приложение, чтобы открыть файл и расширение URL, безусловноучитывая этиосложнения?

Ответы на вопрос(1)

Ваш ответ на вопрос