Jak mogę wyświetlać pliki z pamięci zewnętrznej SECONDARY przy użyciu FileProvider
?FileProvider i dodatkowa pamięć zewnętrzna
Obecna implementacja FileProvider
obsługuje tylko pierwszy katalog, zwrócony przez ContextCompat.getExternalFilesDirs
...
} else if (TAG_EXTERNAL_FILES.equals(tag)) {
File[] externalFilesDirs = ContextCompat.getExternalFilesDirs(context, null);
if (externalFilesDirs.length > 0) {
target = externalFilesDirs[0];
}
}
...
Wydaje się, że nie ma sposobu, aby zdefiniować <path>
wpis dla FileProvider
, który pasuje do wtórnego ścieżkę pamięci zewnętrznej. ..
Co masz na myśli z dodatkowym zewnętrznym dyskiem? – greenapps
Katalogi zwrócone przez 'ContextCompat.getExternalFilesDirs' ze wskaźnikiem tablicy> 0. Na większości urządzeń prawdopodobnie będzie to wymienna karta SD. – artkoenig
AFAIK, 'FileProvider' nie obsługuje tego. Możesz połączyć coś z [moim 'StreamProvider'] (https://github.com/commonsguy/cwac-provider), ale nie ma na to żadnego wsparcia" po wyjęciu z pudełka ". Dodałem, że do mojej listy rzeczy do zrobienia dla "StreamProvider", jak zrobić dobry punkt. Zwłaszcza, że w przypadku tych lokalizacji nie są stosowane żadne uprawnienia do aplikacji, powinny one być dostępne, przynajmniej wtedy, gdy istnieją. Tym, co może być trudne, jest prawidłowe postępowanie w przypadku, gdy wymienny nośnik pamięci nie jest dostępny, ale użytkownik zażądał jego doręczenia. – CommonsWare