我的应用程序允许用户从其他应用程序导入他们的照片和视频。现在,由于Google用Google Photos替换了Google+ Photos,我的应用程序出现了一些问题。其中之一是在应用程序重新启动后重复使用已导入的文件。我有一种感觉,当Google Photos返回带有图像URI的意图时,他们加强了授予权限,因此在我的应用程序被杀死后,它不再具备访问上传的文件的权限。我遇到了安全异常:
java.lang.SecurityException: Permission Denial: opening provider com.google.android.apps.photos.contentprovider.MediaContentProvider from ProcessRecord{2c17ab9e 2124:com.myapp.myapp/u0a436} (pid=2124, uid=10436) that is not exported from uid 10427
编辑:
我也遇到了重复使用由com.google.android.apps.docs.sync.filemanager.FileProvider
提供的文件时出现的同样问题。
有任何建议或变通方法吗?我知道我可以在失去权限之前读取文件,理论上我可以复制它,但我不太喜欢这种方法。