缘由

任何手机设备上,当手机内存不足经常,os城市回收资源。一般是先回收后台打开的资源。如果当前利用占用的资源过高,当前运用也有可能崩溃。
尤其是在调用摄像头点击摄影经常,手机内存占用会面达到一个峰值,此时较容易出题目。

iOS上当内存不足常常,根据uiwebview和wkwebview的不同,它自身有不同的回收策略。

  • 如果是uiwebview的app(常见于5+app),内存不足经常全部app会晤崩溃,即便闪退。
  • 如果是wkwebview的app(uni-app和wap2app在iOS上默认就是wkwebview),内存不足不时,单个wkwebview会见崩溃。也就是所谓的应用还在,而页面白屏。

这个题目在所有利用wkwebview的应用城市出现,比如微信的大众号网页里也存在。在微信小程序里,它做了一个自动恢复手腕,可以让jscore存储数据状态,崩溃的wkwebview自动恢复。所以在碰到题目不时,见面白一下然后恢复渲染。

解决方案

  • uni-app因为引入了独立的jscore处理数据状态,jscore不会崩溃,所以官方采取了和微信小程序同等的策略,增补自动的白屏恢复能力。
  • uni-app中也可以利用nvue来幸免这个题目,nvue页面不会出现内存不足引发的白屏崩溃。
  • 5+app、wap2app,一方面留神前端代码写法,减低内存利用。另外HBuilder2.3.4+开端支持配置WKWebview内核奔溃是重新启动应用还是重新加载页面的配置。

在前端削减内存运用的留神

最主要的注意,就是图片渲染,尤其是大图片。

在页面上不要渲染多张大图,比如从摄像头或相册取舍大都张希图,并缩放尺寸渲染在页面上,虽然肉眼看起来手机屏幕上是几张小希图,但实际上是多张大图只是被缩小,这种情形非常消耗内存。一张图片3m,9张这样的大图同时渲染到屏幕上,什么手机都受不了。
一个缩略图操纵在几k或十几k,才是合理的。

详情页面显现多张大图并不受影响。如果图片滚动在屏幕外,os内存不足经常也见面自动收回这些屏幕外图片占用的渲染资源,最吃资源的就是同屏渲染多张大图。

本文来源于uni-app官网。本文仅供应大家学习,如有侵权及时沟通删除!


<仙宝云(www.xianboss.com)是国内著名商城体系及商城网站建设提供商,为企业级商家提供零售商城、B2B2C多用户商城系统、仙宝云商城体系、微信分销体系、小程序商城、商城源码等多端商城网站建设解决方案>

申明:本网站局部文章和图片根源网络编辑,如有侵权及时沟通删除,神仙宝商城原创文章,转载恳求注明根源。

立即

咨询

400电话

电话咨询

400-1875-778

微信咨询

李经理

微信扫一扫加好友

下载源码

返回顶部