Мне нравится техника INFORMATION_SCHEMA, но другой, которого я использовал: должностное лицо sp_pkeys 'таблица'
Вместо android: path
попробуйте android: mimeType
со значением типа MIME этого конкретного фрагмента содержимого. Кроме того, android: path
не принимает подстановочные знаки - используйте для этого android: pathPattern
.
Вот как я определил свою деятельность в AndroidManifest.xml, чтобы это заработало.
<activity android:name="com.keepassdroid.PasswordActivity">
<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="file" />
<data android:mimeType="*/*" />
<data android:pathPattern=".*\\.kdb" />
<data android:host="*" />
</intent-filter>
</activity>
Схема файла
указывает на то, что это должно происходить при открытии локального файла (а не протокола типа HTTP).
mimeType
можно установить в \*/\*
, чтобы он совпадал с любым типом пантомимы.
pathPattern
- это то место, где вы указываете, какому расширению вы хотите соответствовать (в этом примере .kdb
). В начале .*
совпадает любой квадрат символов. Эти строки требуют двойного экранирования, поэтому \\\\.
соответствует буквальному периоду. Затем вы заканчиваете с расширением файла. Одно из предостережений с pathPattern заключается в том, что .*
не является жадным совпадением, как вы ожидали бы, если бы это было регулярное выражение. Этот шаблон не будет совпадать с путями, которые содержат .
до .kdb
. Для более детального обсуждения этого вопроса и обходного пути смотрите здесь
Наконец, согласно документации Android, оба атрибута хоста
и схемы
необходимы для работы атрибута pathPattern
, так что просто установите его в подстановочный символ, чтобы он совпадал с чем угодно.
Теперь, если вы выберете файл .kdb
в таком приложении, как Linda File Manager, мое приложение появится как опция. Я должен заметить, что это само по себе не позволяет вам загрузить этот тип файла в браузере, так как он регистрируется только в файловой схеме. Наличие такого приложения, как Linda File Manager на вашем телефоне, позволяет вам загружать файлы любого типа.