这两天被公司这个bug困扰的难受,最后经过组长大大的引导解决了这个问题。接下来描述下我问题的详情:在Vivo手机相册里面裁剪图片,然后登陆公司的App要调用系统相册的时候,发现找不到刚才裁剪完的图片。(其他手机都可以查看的到裁剪完的图片,连他兄弟OPPO手机也行)
后面经过观察,发现Vivo手机裁剪完后的图片的后缀是.JPG,(注意这里是大写的JPG,其他手机在相册裁剪完后的图片都是.jpg为后缀的)。然后项目里面用的是仿照微信通过Contentprovider加载相册的方法,所以在存储图片的时候发现不了.JPG为后缀的文件。
之后编写了这个方法,把所有的大写文件后缀,都改为小写,问题得以解决。
/**
* 判断该文件是否是一个图片。
*/
public static boolean isImage(String fileName) {
return fileName.toLowerCase().endsWith(".jpg") ||
fileName.toLowerCase().endsWith(".jpeg") ||
fileName.toLowerCase().endsWith(".png") ||
fileName.toLowerCase().endsWith(".webp");
}