Android FileProvider для CACHE DIR: не удалось найти настроенный корень, содержащий

Я нашел так много ссылок, которые связаны с FileProvider, но я не нашел решения для каталога кеша

java.lang.IllegalArgumentException: не удалось найти настроенный корень, содержащий /data/data/pkg name/cache/1487876607264.png

Я хочу использовать его для CACHE DIRECTORY, Как я могу дать путь в провайдере.

<paths>
    <external-path name="external_files" path="."  />
</paths>

Я использовал это как:

File file = new File(context.getCacheDir(), System.currentTimeMillis() + ".png");

Uri uri = FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName() + ".provider", file);

Работает нормально, если я указываю путь к папке приложения, но не работаю с Cache Directory.

Любая помощь?

2 ответа

Решение

Использование <cache-path>не <external-path>, Смотрите документацию.

В моем случае я использую одно и то же имя для двух разных путей. Единственный рабочий путь - последний. Поэтому не забудьте указать уникальное имя для каждого пути.

Другие вопросы по тегам