参考:

微信小游戏,文件系统

UpdateManager-小游戏

一、Egret提供的本地缓存工具类( 备注:新版本进行了修改,并增加了sound.js等)

在微信小游戏项目中,Egret提供了file-util.js、image.js、text.js来控制微信的50M缓存。

二、尝试缓存一个json文件

现在我们尝试使用text.js来缓存json配置文件。当缓存时,启动游戏不会再次下载这个文件;当没有缓存时,启动游戏时会再次下载这个文件。

使用一个测试json文件,如下图server_config.json。至于这个文件是干什么的就不用关心了,测试用的 = =!

修改text.js的needCache,增加root.indexOf("magicfactory") >=0的判断。

server_config.json文件保存在服务器路径下,路径中有magicfactory,所以当是这个路径下载的json文件,就会被缓存起来。

当我们没有缓存这个文件时,会进行下载,在微信开发者工具的network中可以看到。

当我们缓存了这个文件时,就不会再次进行下载了。

三、如何清理缓存

工具类已经提供了remove的方法。

以下是微信小游戏官方的示例代码。 在检查到新版本时有包更新时,可以执行一次fileutil.fs.remove()。

实际测试PC开发者工具onCheckForUpdate很快,但是真机这个请求会非常慢。

const updateManager = wx.getUpdateManager()

updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
console.log(res.hasUpdate)
}) updateManager.onUpdateReady(function () {
wx.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
success: function (res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate()
}
}
})
}) updateManager.onUpdateFailed(function () {
// 新版本下载失败
})

  

微信小游戏的本地缓存和清除的使用 (text.js image.js file-util.js)的更多相关文章

  1. 微信小游戏 RES版本控制+缓存策略 (resplugin和ResSplitPlugin插件使用)

    参考: RES版本控制 使用 AssetsManager 灵活定制微信小游戏的缓存策略 一.我们的目标 目标就是让玩家快速进入游戏,然后根据游戏的进度加载相应的资源,并可对资源进行版本控制.本地缓存. ...

  2. 微信小程序之本地缓存(十)

    [未经作者本人同意,请勿以任何形式转载] 目前,微信给每个小程序提供了10M的本地缓存空间(哎哟妈呀好大) 有了本地缓存,你的小程序可以做到: 离线应用(已测试在无网络的情况下,可以操作缓存数据) 流 ...

  3. 微信小程序之本地缓存

    目前,微信给每个小程序提供了10M的本地缓存空间(哎哟妈呀好大) 有了本地缓存,你的小程序可以做到: 离线应用(已测试在无网络的情况下,可以操作缓存数据) 流畅的用户体验 减少网络请求,节省服务器资源 ...

  4. 微信小程序---存储本地缓存数据

    微信小程序之数据缓存 开发中常用setStorageSync来实现本地数据缓存操作 (1)点击缓存案例: <button bindtap="toStorage">存储& ...

  5. 【转】微信小游戏接入Fundebug监控

    在SegmentFault上看到Fundebug上线小游戏监控,刚好最近开始玩微信小游戏,于是尝试接入试了一下. 接入方法 创建项目的时候选择左下角的微信小游戏图标. 点击继续进入接入插件页面. 第三 ...

  6. 微信小游戏下socket.io的使用

    参考: 微信小游戏:socket.io 一 在微信小游戏 中使用socket.io报错 因为项目需求,后端要使用nodejs简单搭建一个服务器,通讯用json格式. 使用Egret提供的socket. ...

  7. 微信小程序API---数据缓存

    本地数据缓存常用于存储多页面用到的数据,例如用户头像信息. (1)数据存储 wx.setStorage(Object object)与wx.setStorageSync(string key, any ...

  8. 微信小游戏 50M那部分的缓存机制的使用

    一.使用 AssetsManager 灵活定制微信小游戏的缓存策略 官网教程:http://developer.egret.com/cn/github/egret-docs/Engine2D/mini ...

  9. 【微信小游戏】文件系统,远程加载资源打破4M限制

    一.前提 微信小游戏,对游戏包体的大小有严格是限制,上传文件大小<4M,但是本地缓存文件有50M空间,也就是说我们可以将一些资源放到网上,然后缓存到本地. 二.官方概念 文件系统 文件系统是小程 ...

随机推荐

  1. SSH框架搭建详细图文教程(转)

    这篇文章看的我醍醐灌顶的感觉,比之前本科时候学习的SSH架构 要清晰数倍  非常感觉这篇博主的文章 文章链接为:http://blog.sina.com.cn/s/blog_a6a6b3cd01017 ...

  2. Java读取Unicode文件(UTF-8等)时碰到的BOM首字符问题,及处理方法

    转载:https://blog.csdn.net/clementad/article/details/47168573 2015-18-01修改:增加 apache commons io 处理方法. ...

  3. 马斯克:有62%的程序员认为人工智能会被武器化 #精选AR人工智能算法

    当地时间 9 月 13 日,马斯克在自己的个人推特账号上转推了一篇名为<Hackers Have Already Started to Weaponize Artificial Intellig ...

  4. Windows下如何更新 node.js

    因为在Windows下是没有n模块的并不支持npm install -g n  n latest更新,所以只能老老实实安装 1.在Path环境变量下查看自己的node.js安装路径 计算机-属性-高级 ...

  5. V-rep学习笔记:机器人路径规划2

    路径规划问题是机器人学研究的一个重要领域,它是指给定操作环境以及起始和目标的位置姿态,要求选择一条从起始点到目标点的路径,使运动物体(移动机器人或机械臂)能安全.无碰撞地通过所有的障碍物而达到目标位置 ...

  6. gdb 拾遗

    1,跳过某个特定信号 (gdb) handle SIGPIPE nostop noprint pass 2,break在特定的系统调用处 (gdb) catch syscall 3 3,遇到一个断点的 ...

  7. OpenCV 学习笔记 04 深度估计与分割

    本章节主要是使用深度摄像头的数据来识别前景区和背景区,这样就可以分别对前景和背景做不同的处理. 1 创建模块

  8. Redis高可用详解:持久化技术及方案选择

    文章摘自:https://www.cnblogs.com/kismetv/p/9137897.html 前言 在上一篇文章中,介绍了Redis的内存模型,从这篇文章开始,将依次介绍Redis高可用相关 ...

  9. mongodb浅析

    设计特征: MongoDB 的设计目标是高性能.可扩展.易部署.易使用,存储数据非常方便.其主要功能特性如下. (1)面向集合存储,容易存储对象类型的数据.在MongoDB 中数据被分组存储在集合中, ...

  10. js的new Date()日期的使用

    <script type="text/javascript"> //js获取某个月的天数 function days(year,month){ var dayCount ...