0

我的应用程序上有一个 ContentProvider,我用它来共享资产文件夹中的图像。我使用了这里提出的解决方案:http ://www.nowherenearithaca.com/2012/03/too-easy-using-contentprovider-to-send.html

现在我需要共享存储在我的应用程序缓存文件夹中的图像。使用 ContentProvider 会很好,但我找不到有关如何执行此操作的信息。

有可能的?如果不是,那么正确的方法是什么?

谢谢

4

1 回答 1

1

如果“缓存文件夹”是getCacheDir(),请使用FileProvider.

如果“缓存文件夹”是getExternalCacheDir()试试我的StreamProvider.

如果您真的想将其烘焙到您自己的提供程序中,您需要覆盖openFile()并使用在您想要的文件上ParcelFileDescriptor.openFile()创建一个。ParcelFileDescriptor您还需要扩展您的getMimeType()query()方法以分别返回 MIME 类型和文件名/大小。仅仅加入其中一种罐头实现可能会更容易。

于 2014-02-21T14:57:38.930 回答