问题详情
之前使用云打包使用plus.runtime.openFile能够打开文件(会自动弹窗选择打开方式);但是现在需求需要集成第三方sdk因此,云打包已经不能够满足了,只能离线打包才能够满足更多的需求。但是按照官方文档打包完成之后,以前的一些功能无故失效,代码为同一份。其中下载文件之后调用plus.runtime.openFile不再打开文件(同时也没有报错)就是一个问题,求各位大佬指导?
之前使用云打包使用plus.runtime.openFile能够打开文件(会自动弹窗选择打开方式);但是现在需求需要集成第三方sdk因此,云打包已经不能够满足了,只能离线打包才能够满足更多的需求。但是按照官方文档打包完成之后,以前的一些功能无故失效,代码为同一份。其中下载文件之后调用plus.runtime.openFile不再打开文件(同时也没有报错)就是一个问题,求各位大佬指导?
willKing (作者) - isQ
该问题已经解决,原因是Android7 以后加强了文件的权限控制,解决方案可以看该博文解决 Android N 7.0 上 报错:android.os.FileUriExposedException
谢谢,被这个问题折腾了两天。按照文章里在Androidmanifest.xml 里加provider配置的方法解决了,我之前provider加错了地方,加到外层了,根据里面的方法加到application 下,问题解决。
2019-05-22 16:24
回复 willKing: 找openFile是好像见到过某个帖子,说是推送也需要加权限的,你给Androidmanifest.xml里加上相应权限看看?
2019-05-22 18:21
回复 willKing: 而且,你接收推送怎么接收啊,开一个循环轮询消息?还是用什么插件来实现的?记得阿里云提供有第三方的推送sdk,似乎是收费的。
2019-05-22 18:23
willKing (作者)
回复 h***@126.com: hBuilder集成了个推和小米推送,uni app更是集成了华为、oppo、小米、魅族以及个推第三方sdk
2019-05-22 19:55
willKing (作者)
回复 h***@126.com: 因为我的是5+ app所以离线推送只能购买个推的vip服务,但是要想离线推送的成功率高就得自己配置huawei、oppo、魅族、vivo sdk
2019-05-22 19:57
回复 willKing: 我遇到个有意思的问题,我的应用需要设置为默认的launcher,但是有些时候要调用系统的launcher3,发现plus.runtime.launchApplication调用别的应用没问题,唯独调不动launcher3。
2019-05-23 10:40
z***@163.com - 架构师
h5+离线打包 plus.runtime.openfile打不开文件的问题
https://ask.dcloud.net.cn/article/35703
看这个离线部分的内容,注意权限可以不用加,都在基座里有。还有那个xml不要改,在lib.5plus.base-release.aar里
willKing (作者)
看我下面的回复
2019-05-22 14:42
willKing (作者)
或者看https://juejin.im/post/5ce152496fb9a07eb74b0c86这篇文章最后关于Androidmanifest文件配置第二点,然后确认一下app文件夹下的build.gradle你的defaultConfig {
applicationId "你的包名"
}
2019-05-22 14:47