坑,坑,坑,坑,坑,坑;
注意事项:
做完这些可能调用系统相册是没有问题的,但是如果自己写的一个选择图片的页面,我们通常可能会在onActivityForResult()中
回传的是一个放置选中图片绝对路径的List<String> path=new List();这样的话可能在5.0及以上系统有些选择图片之后不能显
示,比如我亲测的有华为手机6.0,7.0系统,因为Android系统相册默认的回传路径是相对路径是可以正常上传,所以我猜测不能
显示的原因跟路径有关,这种情况下我们需要在onActivityForResult()中对5.0及以上的系统处理代码中将绝对路径转换为相对路:
还有就是在Android10.0的系统上,上传无响应的问题,发现时privateFile引起的,但是9.0的是好的,没啥问题;
private static Uri getUriForFile(Context context, File file) {
if (context == null || file == null) {
throw new NullPointerException();
}
Uri uri;
if (Build.VERSION.SDK_INT >= 24) {
uri = FileProvider.getUriForFile(context.getApplicationContext(), "包名.fileProvider", file);
} else {
uri = Uri.fromFile(file);
}
return uri;
}
把原有路径在这里转一下,发现在上传就是好的;