codecamp

流加载与分包加载的区别

分包加载简单来说就是把一个大的程序包拆分成主包以及其他包,主包中的资源是启动时渲染出首页所需要加载的文件,主包下载时长越小,就可以尽早开始加载文件,首帧渲染总耗时也更短。

图片名称

微信这样解释:随着小游戏的玩法越来越丰富,开发者对于扩大包大小的需求越来越强烈,所以我们推出了小游戏分包加载这一个功能。 所谓的分包加载,即把游戏内容按一定规则拆分这几包,在首次启动时先下载必要的包,这个必要的包我们称为「主包」,开发者可以在主包内触发其它分包的下载,从而把首次启动的下载耗时分散到游戏运行中。(摘自微信开发文档)


分包加载和流加载的相同点

  • 两者都是为了加快无缓存首次冷启动的耗时。分包通过缩短下载时间,流加载通过提早加载时间。


分包加载和流加载的不同点

  • 分包加载由开发者决定如何拆包,每个包存放哪些文件;流加载由我们编译工具打包,开发者无感知无需做任何操作
  • 分包加载还可以解除单个程序包的大小限制。可以为开发者管理一些非启动必要的资源文件。但同时也会增加 SDK 内部管理的成本。即使不分包,开发者也可以自行在启动过程中下载非必要的资源。

注:流加载与分包加载是两种可以共存的实现方式。我们暂时以流加载为主优化小程序性能,后期不排除也会考虑分包加载的方式。

流加载是什么
JavaScript支持情况
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

字节跳动小程序 介绍

字节跳动小程序 开发

字节跳动小程序开发框架

字节跳动小程序开发框架基础说明

字节跳动小程序开发框架基础功能

字节跳动小程序开发框架逻辑层

无标题文章

无标题目录

API

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题目录

无标题目录

无标题文章

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }