我使用以下方法将一个图像文件保存在我的应用的缓存中。
File path=getActivity().getExternalCacheDir();
在我的日志中,我发现我的图像保存在手机的内部存储空间中
/storage/emulated/0/Android/data/me.XXX.xxx/cacheimagefile100.png
我可以使用意图访问该图像文件以便与其他应用共享。但是一些使用我的应用程序的用户在这行代码中遇到错误,如
Attempt to invoke virtual method 'java.io.File android.app.Activity.getExternalCacheDir()' on a null object
我不知道为什么会这样。甚至我的应用程序都是使用内部存储(OS VERSION Android 7)而不是外部SD卡存储缓存。
谁能告诉我背后的原因是什么? 对此有什么好处? 我使用了getCacheDir()方法。但是当我通过意图共享文件时(基本上它是图像),图像为空并且为空。告诉我一个解决方法。