打包微端时遇到的奇怪加载问题

Posted zs3718

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了打包微端时遇到的奇怪加载问题相关的知识,希望对你有一定的参考价值。

同一个链接,在浏览器和其他人的微端里都没问题,我本地的微端执行连最开始的unity主程序加载都无法执行。

在UnityLoader.js里一点一点地加输出,查了好久才找到解决办法(只是还没明白原因),问题出在indexedDB的使用方法中:

try {
  var indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
  var openRequest = indexedDB.open(databaseName);
  openRequest.onupgradeneeded = function (e) {
    initDatabase(e.target.result); //加上这句就好了
    var objectStore = e.target.result.createObjectStore(store, { keyPath: "url" });
    ["version", "company", "product", "updated", "revalidated", "accessed"].forEach(function (index) { objectStore.createIndex(index, index); });
  };
  openRequest.onsuccess = function (e) { initDatabase(e.target.result); };
  openRequest.onerror = function (e) { initDatabase(null); };
  setTimeout(openRequest.onerror, 1000);
} catch (e) {
  initDatabase(null);
}

原本的代码会在openRequest.onupgradeneeded里执行e.target.result.createObjectStore时导致触发openRequest.onerror,抛出一个AbortError,但凭输出也查不到更具体的信息了,也没有找到具体的原因,暂时就先这样了吧。

以上是关于打包微端时遇到的奇怪加载问题的主要内容,如果未能解决你的问题,请参考以下文章

H5游戏微端打包工具安卓机和苹果机都能进行打包吗?

egret微端, 非原生打包相关

ioshybrid怎么打包白鹭项目

Android片段底部的奇怪空白?

使用主播放列表时,HLS.js 一次加载所有子片段

用于 onActivityCreated 中通用图像加载器的片段中进度条的 NullPointerException