记录一下解决5+APP离线打包选择文件闪退问题

上一篇文章中给大家介绍了一下离线打包的简单过程。结果在实际项目测试过程中发现一个蛋疼的问题,一点选择文件APP就闪退(文件选择源代码为input type=‘file’ 输入框)。 并抛出以下错误信息:
java.lang.NullPointerException: Attempt to invoke virtual method ‘android.content.res.XmlResourceParser android.content.pm.ProviderInfo.loadXmlMetaData(android.content.pm.PackageManager, java.lang.String)’ on a null object reference
于是就去找度娘看看是什么问题;问题的出现是因为Android7.0的兼容性引起的。
记录一下解决5+APP离线打包选择文件闪退问题_第1张图片
解决方案是需要在 AndroidManifest.xml 文件中配置 provider 节点。
选择文件的操作是5+app实现的,那么SDK中应该会有相应的配置。于是打开5+APP中SDK目录下的 AndroidManifest.xml 文件查看相应的配置,结果竟然没有?。这就尴尬了!
一想这不应该啊,然后就又打开示例项目中的 AndroidManifest.xml ,这个里面竟然真的有:
记录一下解决5+APP离线打包选择文件闪退问题_第2张图片
于是就把这段代码拷贝到自己的项目中,运行。。。测试。。。
结果:
记录一下解决5+APP离线打包选择文件闪退问题_第3张图片
…?? 还是闪退。这是什么鬼!!!
在网上查了半天也没查出什么原因,但总得解决问题啊。于是不信邪的用解压缩工具打开 5+ 基础库文件,打开后发现里面也有一个 AndroidManifest.xml 文件,然后再打开该文件,发现一段注释掉的代码:
记录一下解决5+APP离线打包选择文件闪退问题_第4张图片
注意被红框圈中的位置,红框里的内容需要替换成自己项目的包名。 哈哈,感觉胜利在向我招手,修改好代码启动项目。
顺利完成文件的选择上传,测试成功!!!

顺便吐槽一下5+ SDK的文档编写人员,一定要完善文档啊,尤其是重要的信息!!!程序猿何苦为难程序猿?

你可能感兴趣的:(记录一下解决5+APP离线打包选择文件闪退问题)