我在一个页面中调用了openWindow,然后点击返回,如此多次操作,内存一直涨,用mui.js调试发现窗口有close,可是怎么回事呢?如果在about.html不执行mui.init(),再按上面操作就不会增长。注:about.html就一个标题和一行文本。
![酱m油](http://img-cdn-tc.dcloud.net.cn/uploads/avatar/000/19/85/46_avatar_mid.jpg?v=0)
酱m油
- 发布:2016-03-08 10:04
- 更新:2017-11-09 13:53
- 阅读:2314
11 个回复
DCloud_UNI_FXY
能否发一个可重现该问题的测试工程?
酱m油 (作者)
mui.openWindow(),在魅族flyme5(2款魅族机)中随便都会出现,其他机型没测试过。webview也确实关闭了,但开一次openwindow就增加好几兆内存,最后应用卡死。
DCloud_UNI_FXY
我看你说的是只有调用init才会导致的内存增加。不调用就不会增加?
2016-03-08 14:52
酱m油 (作者)
对,我也自己用plus.webview.create调用,然后close,也一样的问题
2016-03-08 15:25
酱m油 (作者)
最新测试,在新页面不初始化:mui.init(),返回使用了自定义事件是内存也会增长:
var back=mui.back;
mui.back=function(){
mui.fire(plus.webview.getLaunchWebview(),'myclose',{aa:'啊啊'});//不初始化且去掉这个就不会了。
back();
}
DCloud_UNI_FXY
你用的什么内存监控工具
2016-03-08 16:27
酱m油 (作者)
魅族flyme5自带的手机管家
2016-03-08 16:47
酱m油 (作者)
刚才还特意降级到flyme4.5的固件也是这样的问题,我的另一台魅蓝metal也一样的问题。
2016-03-08 16:48
酱m油 (作者)
这几天特意去apicloud转转,发现还不错,很流畅,内存也没暴涨,很喜欢他的window和frame模式!
回来看看居然我的问题没有下文。。。。
已我这2周学习这两个框架的粗浅认识:
d的ide很不错,a太差;
a的文档比d好;
d全部的webview在一个win上(猜的)不知道close其中的webview会不会真正释放内存,a关闭窗口会释放;
d的的webview据说是优化过得,但我和a比较后也没发现有多优化;
d的mui很好,a没有web ui,但发现有第三方做的一个aui,看了下发现aui居然太TMD的想mui了,很怀疑哦!!!
我勒个去
iframe 模式窗口会有白屏. appcan 也是如此,单window当然不会耗太多内存.
我也一直想写个测试下,但本人还是倾向hb的.就看hb怎么优化了.
我勒个去
还有一个,那边插件相对较多,有一个输入法插件,我很喜欢,可惜这里没有.
酱m油 (作者)
那边的frame应该不是iframe;这里的单window耗不耗看我上面反馈的问题。
2016-03-11 14:26
酱m油 (作者)
再顶。。。。直到解决这个问题!!!
我勒个去
这个只能自己调整,你不断的创建新窗口,又不断的关闭,关闭的时候,我感觉资源不会立即释放,所以你频繁的打开关闭,势必如此.
你可以选用公用父模板的形式.这样就不需要频繁打开关闭了
另外问下,你什么业务逻辑需要频繁的打开关闭.
酱m油 (作者)
企业应用,模块较多,页面较多。不说频繁了,一个应用页面开开关关肯定很多!开关个20次看看就知道了
我勒个去
其实模块多无所谓的,你看层级,需要多少级,
比如 一个流程 需要打开A->B>C 就3级
如果需要C->B->A 可以建3个模板
Damon4iOS - 85后
楼主 我也发现了 这个问题解决了吗???