web-dev-qa-db-ja.com

Android CACHE DIRのFileProvider:を含む構成済みのルートが見つかりませんでした

FileProviderに関連するリンクがたくさん見つかりましたが、キャッシュディレクトリの解決策が見つかりませんでした

Java.lang.IllegalArgumentException:/data/data/pkg name/cache/1487876607264.pngを含む構成済みルートが見つかりませんでした

CACHE DIRECTORYに使用したいのですが、providerにパスを指定するにはどうすればよいですか。

<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);

アプリケーションフォルダのパスを指定すると正常に機能しますが、キャッシュディレクトリ。では機能しません

ヘルプはありますか?

16
Pratik Butani

使用する <cache-path>ではなく、<external-path>ドキュメント を参照してください。

37
CommonsWare