Męski,Wiele rozszerzenie pliku/Mimetype intent-filtry z jednej działalności
Próbuję dostać go tak, że moja aplikacja Android może reagować zarówno na pliki są otwarte (poprzez dopasowanie ich rozszerzeń) i typów MIME (więc będą działać z poziomu przeglądarki).
ja po poradę tutaj:
Android intent filter for a particular file extension?
ale nadal nie miał szczęścia.
Odpowiednia sekcja z moim android pliku manifestu jest następujący:
<activity android:name="MuPDFActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="application/vnd.ms-xpsdocument"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="application/pdf"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="application/x-cbz"/>
</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:scheme="file"/>
<data android:mimeType="*/*"/>
<data android:pathPattern=".*\\.xps"/>
<data android:host="*"/>
</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:scheme="file"/>
<data android:mimeType="*/*"/>
<data android:pathPattern=".*\\.pdf"/>
<data android:host="*"/>
</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:scheme="file"/>
<data android:mimeType="*/*"/>
<data android:pathPattern=".*\\.cbz"/>
<data android:host="*"/>
</intent-filter>
</activity>
Jak widać, chciałbym aplikację powoływać do .pdf, .xps i .cbz plików, także pliki z odpowiednimi typami MIME. Testy lokalne wydają się sugerować, że sekcja .pdf i application/pdf działają, ale spróbuj tak, jak być może, nie są to .xps (i prawdopodobnie .cbz).
Czy brakuje tu czegoś oczywistego? Czy każde działanie może mieć tylko jeden wzorzec MIME/plik?
Każda pomoc będzie mile widziana.
Dzięki,
Robin
Która wersja Androida? Zauważyłem, że są tutaj różnice.Zobacz moje pytanie: http://stackoverflow.com/questions/20650378/how-did-intent-filter-change-from-android-2-to-android-4 – Martin