У меня проблема с получением действия, которое будет инициировано в ответ на загрузку файла из окна браузера.
Когда я нажимаю кнопку загрузки файла в браузере, он загружается на SD-карту вместо того, чтобы запускать мою MainActivity (или даже подсказывать, что мне с ней делать).
Если я затем найду файл на SD-карте с помощью проводника и выберу его, то будет запущена моя основная операция.
Я неправильно понял, как работают фильтры намерений? Я проверил тип mime для загружаемого файла, используя wireshark на компьютере, чтобы убедиться, что он соответствует ожиданиям.
[Если я удаляю PathPattern и просто использую mime-тип, то при нажатии кнопки загрузки мне предлагается сказать, что на устройстве нет ничего для обработки этого файла, и я все еще хочу продолжить загрузку. ]
Любая помощь будет оценена.
Вот запись из моего манифеста:
<activity android:name=".activity.main.MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<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:mimeType="application/xml-mydata"
android:pathPattern=".*\\.mydata" />
</intent-filter>
</activity>