[ https://issues.apache.org/jira/browse/WEEX-27?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15994293#comment-15994293 ]
齐山 commented on WEEX-27: ------------------------ # 2017-05-03 ## Progress - realize prerender logic - excute render which is saved in prerender manager - call modal method when render finished - modify the render finish time ## summary * api 1. call prerender task - addtask(string url) call prerender task<br /> url:the render url(dictionary)<br /> - options:config parameter(dictionary)<br /> ignoreParams:the ignore params ( such as:random)(array) version:the js version - callback(options) call back when finish - options:the result when native finish(dictionary)<br /> result:the function execute result success,cancel,error (string)<br /> url:the render url(dictionary)<br /> message:call back information(sting) ## feature - render cache invalid - 5 minute lose efficacy - add switch to announce whether the control is effective - sdk performance time - screen first time and render finish time should update - time - it should support when the prerender will update - module sync method - for sync method ,we will hook js bridge thread of instance. it will be excuted when render really > Prerender > --------- > > Key: WEEX-27 > URL: https://issues.apache.org/jira/browse/WEEX-27 > Project: Weex > Issue Type: New Feature > Environment: Android, iOS, (not Html5) > Reporter: xingjiu > Attachments: TB12RlEQFXXXXccXFXXXXXXXXXX.jpg > > Original Estimate: 504h > Remaining Estimate: 504h > > In order to impove the page open speed, we have intro many ways, such as > js-bundle prefetch. > Now we have a new idea of render the next page in background. When click the > button to jump to the next page, just show it, no other js file execute cost > needed. > We call it prerender. > First. Limition > Prerender will benifit user experience of waiting time of new page load. > It is like a tradition way, use extre space(memory) to reduce time cost. > We need to protected our app`s memory cost, so just one page can be > prerendered. This limit maybe removed later. > Second. How we do? > One way is to store the callNative commander in memory. > We know weex use javascript engine to explain how the page will be render, > then js will use callNative() to make native views created. > Once we just store the callNative commander, not to execute it. When the page > is truely show, do the commander executed. > The attach image is the order of weex render steps currently. > Finally. > Our goal is to make weex page show quickly. > We assure that using prerender, the page open in one second will reach 99.9+ > precent. And the global festive main page will works prefect in prerender > mode. -- This message was sent by Atlassian JIRA (v6.3.15#6346)