如何减少移动设备(iOS等)上的HTML5游戏下载?

时间:2018-05-22 12:08:51

标签: javascript html5

我有一个HTML5游戏,我一直在使用一些约1.5mb组合(缩小)的JavaScript库,并拥有大约1.5mb的资产(3D模型和PNG纹理)。 我的实际游戏代码在顶部增加了50kb。 总而言之,它有点超过3mb。

我有两个问题:

  1. 我在开发和测试主要的第三方库时,游戏资产没有变化。只有50kb左右的游戏逻辑正在发生变化。 我可以在移动设备上测试(在我的情况下是iPhone中的Safari)并且只加载了所有这些库和资源,并且只下载修改后的游戏逻辑文件吗?

  2. 如果我与朋友分享网址,他们每次重新加载网页时都会被迫下载整批网址吗?

  3. 我想底线是什么,如果有的话,缓存选项是为了避免不断重新加载静态(不变的)库/资产?

    任何帮助/建议表示赞赏。

    由于

    马丁

1 个答案:

答案 0 :(得分:0)

  • JavaScript库 - 如果它是一个流行的库,从CDN加载它们会更有效率,因为浏览器更有可能从其他站点缓存它。
  • 您可以将代码拆分为两个minify / uglify文件,对于不太可能更改的文件,在服务器中添加Expires或Cache-Control Header:https://developer.yahoo.com/performance/rules.html?guccounter=1#expires
  • 使用Gzip(您也可以在上面的链接中找到它),这将减少响应文件的大小。
  • 您可以添加一个服务工作者与Cache接口(所有浏览器都不支持的服务工作者)一起缓存JS文件,包括资产(例如图像):

https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API https://developer.mozilla.org/en-US/docs/Web/API/Cache