华为安卓版本10更新底包闪退问题android.content.ActivityNotFoundException: No Activity found to handle Intent

近期反馈过来华为mate30在游戏内更新底包的时候会导致直接闪退,连上真机测试后,发现出现的报错如下:
在这里插入图片描述
安卓底层代码之前是这样的:
在这里插入图片描述
由于本人是个java底层的小白,网上查找资料一步一步做修改,慢慢摸索着来的,首先给加了一个抛出异常的操作,防止下载到100%的时候直接闪退。华为安卓版本10更新底包闪退问题android.content.ActivityNotFoundException: No Activity found to handle Intent_第1张图片
但是这个只是治标不治本,下载结束后没有跳转安装界面也没有闪退而已。接下来进行下一步操作。网上关于安卓版本10的资料比较少,然后项目也属于成熟的那种,一开始没有往权限方面想,一直在定位的是自己的存储位置是否正确。后面断点发现存储位置正确。接着网上百度到很多说安卓版本8以后的权限问题会导致这个错误。参考了前辈的文章,上链接:https://www.cnblogs.com/changyiqiang/p/11249839.html。
步骤一
在Mainfest.xml 中加入权限编码


但是并没有解决我的问题,还是会闪退,继续报原来的错误。
步骤二:
修改安装代码如下:
华为安卓版本10更新底包闪退问题android.content.ActivityNotFoundException: No Activity found to handle Intent_第2张图片
其中com.MyApp.project.fileprovider中的com.MyApp.project为自己的项目名。加入了这些代码后,又有新的报错信息:
在这里插入图片描述
检查了一遍自己的Mainfest.xml 中的fileprovider的条目:华为安卓版本10更新底包闪退问题android.content.ActivityNotFoundException: No Activity found to handle Intent_第3张图片
没有发现配置有误问题,注意:注意检查上面代码中名称是否和条目中的一致,不一致也会出现问题的,网上找问题的时候有看到小可爱们出现过问题。
接下来看到了一位前辈的文章:https://blog.csdn.net/leilifengxingmw/article/details/57405908
华为安卓版本10更新底包闪退问题android.content.ActivityNotFoundException: No Activity found to handle Intent_第4张图片
原本没有写红色圈起部分的指定路径,所以执行的时候会抛出`java.lang.IllegalArgumentException: Failed to find configured root that contains错误,加了这两个路径以后就能正常下载安装了,问题解决。其实不是很理解为什么我看到.apk在内部存储中,通过打印看到的却是外部存储区域的根目录下的文件。贴上前辈对内外存储的解释代码:


    
    
    
    
    
    
    
    
    
    
    
    
    

第一次写文章,防止和我一样的小可爱没有头绪找问题,小渣渣一枚,如果描述有问题,请指正。
华为安卓版本10更新底包闪退问题android.content.ActivityNotFoundException: No Activity found to handle Intent_第5张图片

你可能感兴趣的:(安卓底层问题,cocos2d,java)