当前位置: 首页 > news >正文

Unity开发之Webgl自动更新程序包

之前让客户端更新webgl程序是在程序里写版本号然后和服务器对比,不同就调用 window.location.reload(true);之前做的客户端都是给企业用,用户数少看不出来啥问题。后来自己开发一个小网站,用户数量还是挺多,然后就会遇到各种各样的问题了。比如这个自动更新程序的问题就不行,会报错。用户用键盘的强制刷新就可以更新程序。搜了AI发现其实就是现在浏览器会把window.location.reload(true);和window.location.reload();等价。也就是非强制刷新。也就是说他

  • 只重新加载 HTML 页面,

  • 但对大部分 JS、WASM、DATA 等文件依然使用缓存。

所以这个方案行不通。换个方法如下,把index.html中部分代码改成如下:

 const version = "1.01"; // 你可以每次部署时更新这个版本号var buildUrl = "Build";var loaderUrl = `${buildUrl}/3d.loader.js?v=${version}`;var config = {dataUrl: `${buildUrl}/3d.data.unityweb?v=${version}`,frameworkUrl: `${buildUrl}/3d.framework.js.unityweb?v=${version}`,codeUrl: `${buildUrl}/3d.wasm.unityweb?v=${version}`,streamingAssetsUrl: "StreamingAssets",companyName: "Manggehaili",productName: "PPJ_Editor",productVersion: "0.1",showBanner: unityShowBanner,};

代码里的版本号不需要维护了,每次更新就改这个版本好就可以了。自动加个1.就会重新请求。

相关文章:

  • 华为OD机试真题——矩形相交的面积(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
  • 线性代数入门:轻松理解二阶与三阶行列式的定义与理解
  • 【课堂笔记】EM算法
  • 华为OD机试真题——AI面板识别(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
  • Windows MongoDB C++驱动安装
  • JavaScript性能优化实战技术文章大纲
  • 【计算机网络】第2章:应用层—Web and HTTP
  • MySQL、PostgreSQL、Oracle 区别详解
  • 重新测试deepseek Jakarta EE 10编程能力
  • 2025LitCTF 复现
  • Java 对接 Office 365 邮箱全攻略:OAuth2 认证 + JDK8 兼容 + Spring Boot 集成(2025 版)
  • DEEPSEEK帮写的STM32消息流函数,直接可用.已经测试
  • PaddleOCR本地部署 (Python+Flask)
  • 【Linux 基础知识系列】第二篇-Linux 发行版概述
  • 代码随想录算法训练营 Day59 图论Ⅸ dijkstra优化版 bellman_ford
  • ADB识别手机系统弹授权框包含某段文字-并自动点击确定按钮
  • HTTP/HTTPS与SOCKS5三大代理IP协议,如何选择最佳协议?
  • Nginx详解(三):ngx_http_rewrite_module模块核心指令详解
  • python同步mysql数据
  • 报错SvelteKitError: Not found: /.well-known/appspecific/com.chrome.devtools.json
  • 哪里有服务好的网站建设公司/sku电商是什么意思
  • 广州旅游网站建设设计/网站上做推广
  • 银川做网站最好的公司有哪些/国内免费推广产品的网站
  • 用框架做网站如何居中/百度点击器下载
  • 把自己的网站卖给别人后对方做违法吗/网络媒体推广报价
  • 下班后做兼职任务网站/关键词在线听免费