因为Android7.0以后权限改成了动态权限申请。但凡有在安卓开发中调用过fromFile函数的app肯定全部中招。我开发的app在调用系统程序(相机和升级)时就会利用外部存储器交换数据。未升级前一般是用
uri = Uri.fromFile(file); 可以完成外部存储器的读写。但是升到7.0后需要做如下的改进就可以填坑出来。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { //如果在Android7.0以上,使用FileProvider获取Uri uri = FileProvider.getUriForFile(this, "com.gougoucompany.clarence.cameraalbumtest.fileprovider", file); } else { uri = Uri.fromFile(file); }
打开AndroidStudio的edit--find--find in path 可以搜索出所有fromFile的函数。全部替换吧