Egret版本更新(H5增加版本号)
由于浏览器缓存问题。在服务器上更新了新的图片等资源以后,客户端并不会下载最新的。
关于浏览器缓存机制,可自行百度。
Egret中资源更新解决方案有以下:
一 资源名后增加版本号
二 重写Egret引擎加载
一 资源名后增加版本号
在default.res.json资源配置文件中,在路径后加上"ver=1.0",下次修改后,将版本号向上增加"ver=1.1"。
这样每次浏览器都会下载跟新后的资源。
优点:
1 可以根据更新需求,控制到只更新某一张图片,或更新所有资源。
缺点:
1 需要知道哪个资源被更新了,然后手动去修改版本号,非常的麻烦。
二 重写Egret引擎加载
在加载资源之前,重写getVirtualUrl方法。
RES.web.Html5VersionController.prototype.getVirtualUrl = function(url) {
url += "?v=" + window["version"];
return url;
}
window["version"]在index.html中定义。每次更新后直接修改这个版本号就可以了。
var version = "1.0";
这样Egret每次加载时,会自动在url后拼接版本号
"http://192.168.0.101:3001/resource/default.thm.json?v=1.0".
"http://192.168.0.101:3001/resource/config/description.json?v=1.0".
优点:
1 每次更新可以非常方便的修改版本号,保证版本更新后,下载的是新的。
缺点:
1 每次修改版本号,所有的资源都会重新下载。无论修改或没修改过的。
Egret版本更新(H5增加版本号)的更多相关文章
- Egret白鹭H5小游戏开发入门(二)
前言: 昨天的文章中简单的介绍了Egret白鹭引擎从安装到基本的使用配置等问题,今天着重介绍H5小游戏开发的起步阶段,如Wing面板的使用,素材的处理,类的说明,开始布局等等. 整体概况: 根据上一篇 ...
- Egret白鹭H5小游戏开发入门(三)
前言: 在上一篇文章中着重介绍了H5小游戏开发的起步阶段,如Wing面板的使用,素材的处理,类的说明等等,那么今天主要是涉及到场景的创建,loading的修改等等的代码编写. 对于这一节,我在讲解的过 ...
- Egret白鹭H5小游戏开发入门(一)
前言: 好久没更新博客了,以前很多都不会,所以常常写博客总结,倒是现在有点点经验了就懒了.在过去的几个月里,在canvas游戏框架方面,撸过了CreateJS,玩得了Egret,又学过PIXI.js. ...
- Visual studio每次build自动增加版本号
关键词:visual studio,rc file,VS_VERSION_INFO,FILEVERSION,PRODUCTVERSION 目标:希望每次在vs中编译项目时,生成的可执行程序版本号自动+ ...
- webpack脚手架增加版本号
1.product模式下,新增版本号: 1)common.js文件中,输出的文件路径要跟着变化 output: { filename: 'js/[name].js', path: path.resol ...
- HMS Core 机器学习服务6.4.0版本更新啦,文本翻译功能增加10种小语种语言类型!
近日,HMS Core机器学习服务(ML Kit)文本翻译功能在6.4.0版本更新中增加了10种小语种语言类型,分别是马其他语.马其顿.冰岛.乌尔都语.波斯尼亚语.乌克兰语.加泰罗尼亚语.斯洛文尼亚语 ...
- App版本号定义与说明基础知识
版本控制比较普遍的三种命名格式 GNU 风格的版本号命名格式 主版本号 . 次版本号 [. 修正版本号 [. 编译版本号 ]] 示例 : 1.2.1, 2.0, 5.0.0 build-13124 W ...
- Egret学习-初次创建项目
最近无聊,好久没有写游戏了,决定学习下egret,主要原因:egret是h5框架,相比android和iPhone或cocos2dx来说不需要安装可以直接运行. 下面进入正题,开始学习egret 简单 ...
- 在Egret实现二维码长按识别
Egret中二维码图片,是在canvas上,无法在微信上长按扫描识别. 由于微信长按识别二维码是截屏扫描原理,所以只要长按当前屏幕任意一张图片,都能够识别当前屏幕上的二维码. 这里把二维码放在ex ...
随机推荐
- 三部曲二(基本算法、动态规划、搜索)-1006-The Same Game
The Same Game Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 4585 Accepted: 1699 Des ...
- css实现微信信息背景qq聊天气泡
用css实现一个椭圆形状的背景框很好实现 css: div{ width:200px; height:80px; background-color: #78DDF8; border-radius:10 ...
- CI框架引入外部css和js文件
首先在项目根目录下建立assets文件夹,在这个文件夹下再建立css和js文件夹分别放置css和js文件 然后,在项目根目录下建立.htaccess文件 内容如下: RewriteEngine on ...
- P,NP,NPC,NPC-HARD
P: 能在多项式时间内解决的问题 NP: 不能在多项式时间内解决或不确定能不能在多项式时间内解决,但能在多项式时间验证的问题 NPC: NP完全问题,所有NP问题在多项式时间内都能约化(Reducib ...
- php wampserver 80 端口无法开启的解决方法
下载Microsoft Visual C++ 2005 Redistributable Package x86 和 x64(vc_redist.x86.exe/vc_redist.x64.exe) 安 ...
- Objective-c——UI基础开发第十二天(相册展示)
一.知识点 模仿新特性 UICollectionViewFlowLayout自定义布局 相册 瀑布流(淘宝购物之类的 二.复习 a.UICollectionView 和 tableview共享一套AP ...
- CSS 类选择器
在 CSS 中,类选择器以一个点号显示: .center {text-align: center} 在上面的例子中,所有拥有 center 类的 HTML 元素均为居中. 在下面的 HTML 代码中, ...
- NUnit笔记
注意:单元测试中,Case 与 Case 之间不能有任何关系 测试方法不能有返回值,不能有参数,测试方法必须声明为 public [TestFixture] //声明测试类 [SetUp] //建立, ...
- Android Gradle 多Module单独编译一个Module
假如项目中有两个Module,app1和app2.假如我只想对app1 module进行build,则可以: gradle :App1:build build命令可以换成任意gradle命令.
- IOS启动页设置适应ios8/9
直接上截图 1. 添加对应尺寸的图 2.设置三项 3.去掉默认设置 4.特别的xcode 7 需 通过在p.list配置文件中增加节点: Launch image 类型为String 设置值为Defa ...