|
初步完成的作品,该如何进行后续的优化?-绍兴互联网网络公司为你转播现在距离作品提交还有2天,相信不少参赛队伍已经完成了整体上的开发,实现了小程序的核心功能。那么在提交之前,我们还可以针对它的性能进行优化。 精简代码包大小 控制代码包大小,有助于减少小程序的启动时间。这主要通过代码和资源的缩减。 ■ 控制代码包内图片资源 小程序代码从上传到供用户加载使用,会经过微信的 CDN 上压缩,但不同小程序之间的代码包压缩比具有差异,其中一个原因就是CDN的压缩对文本资源的压缩效果最好(部分压缩率达到了80% ),而如果对已经压缩的资源(例如大多数的图片格式)则效果甚微。 因此,要减少代码包大小,应减少资源包中的图片等资源。在开发者工具上传时,还要记得勾选【代码上传时,压缩代码】选项。 ■ 及时清理没有使用到的代码和资源 同学们在开发的时候可能曾经引入过一些库文件,后来由于各种原因不再使用这个库时,常常只是去掉了代码里的引用,而忘记删掉这类库文件。 目前小程序打包会将没有实际使用的库文件和资源同时打入到代码包里,从而影响到整体代码包的大小。因此,我们需要及时清理没有使用到的代码和资源。 优化加载方式 优化加载方式,有助于减少分包加载时间,使页面跳转更加快速。目前代码包的加载方式有这三种: ■ 分包加载 小程序内部不同的功能通常会对应几个独立的页面,因此代码的打包可以按功能拆分成多个分包,并根据用户需要使用的时候才加载,从而保证加载速度。 ■ 分包预加载 利用分包预下载功能,开发者可以预先配置某个页面可能会跳转到的分包,在进入小程序某个页面时,由基础库在后台自动预下载可能需要的分包。 ■ 独立分包 独立分包可以独立于主包和其他分包运行,从独立分包中的页面进入小程序时,无需下载主就能够直接运行,大幅度提高分包页面的启动速度。 正确操作 setData 减少对setData的过度使用,能减少编译时间,使交互更加流畅。 ■ 减少频繁调用setData 每调用一次setData, 都是逻辑层通过native层向渲染层的一次通讯,占用耗时很大。当小程序非常频繁地进行setData操作,会导致Android 用户在滑动时会感觉到卡顿,操作反馈和渲染也会有出现延时,严重影响使用体验。 因此,同学们不要过于频繁调用setData,应考虑将多次setData合并成一次setData调用。 ■ 减少 setData 的数据量 数据通信的性能与数据量正相关。利用setData进行数据传输,实际上是一次 evaluateJavascript 脚本过程,数据量过大时,会增加脚本的编译执行时间,占用 WebView JS 线程。 如果有一些数据字段结构比较复杂或包含长字符串,则不应使用setData来设置这些数据。与界面渲染无关的数据最好不要设置在data中,可以考虑设置在page对象的其他字段下。 ■ 不要在后台态页面进行 setData 当页面进入后台态(用户不可见),不应该继续去进行setData,后台态页面的渲染用户是无法感受的,另外后台态页面去setData也会抢占前台页面的执行。 |