使用360加固后华为8.0手机报解析包失败。
在未加固的情况下安装apk正常,加固后报报解析包失败,错误日志如下:java.lang.SecurityException: Permission Denial: reading android.support.v4.content.FileProvider uri content://com.chinaums.countryside.fileprovider/external_storage_root/mpos/tmp643af9f311ee1015f1091a8a5c991eb9_02733800.apk from pid=6710, uid=10037 requires the provider be exported, or grantUriPermission()
已有授权代码:
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
自己解决下,加固导致代码执行时间差异,我在startIntent后调用了killProcess,加固后killProcess可能提前执行了,导致安装进程请求应用验证fileprovider权限失败。
so,去掉killProcess就行,target版本24以上的同学们加固的时候注意了。 您好,此问题需要开发者修改原包,对于调用安装程序之后需要自杀的情况,需要使用Context.grantUriPermission的方式授予权限,而不是使用Intent.setFlag这种临时授权方式。
页:
[1]