Help
RSS
API
Feed
Maltego
Contact
Domain > 5idn789.com
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2026-02-02
13.32.241.66
(
ClassC
)
2026-02-10
3.169.173.22
(
ClassC
)
Port 80
HTTP/1.1 301 Moved PermanentlyServer: CloudFrontDate: Tue, 10 Feb 2026 05:55:17 GMTContent-Type: text/htmlContent-Length: 167Connection: keep-aliveLocation: https://5idn789.com/X-Cache: Redirect from cloudfrontVia: 1.1 474071c4c0fe7769ce8d0b73ccd104b0.cloudfront.net (CloudFront)X-Amz-Cf-Pop: HIO52-P4X-Amz-Cf-Id: E3XgRy4qJmDpLyqGTu0z56wqdRFzEeShXLPqeFIdS1ML3cIkC9-OOAVary: Origin html>head>title>301 Moved Permanently/title>/head>body>center>h1>301 Moved Permanently/h1>/center>hr>center>CloudFront/center>/body>/html>
Port 443
HTTP/1.1 200 OKContent-Type: text/htmlContent-Length: 29815Connection: keep-aliveDate: Mon, 09 Feb 2026 11:43:03 GMTLast-Modified: Mon, 09 Feb 2026 05:53:20 GMTETag: 2c5498f94051e5a70373726dc6ced605Server: AmazonS3X-Cache: Hit from cloudfrontVia: 1.1 9b38ff4b39c6c0a269c601916dab060e.cloudfront.net (CloudFront)X-Amz-Cf-Pop: HIO52-P4X-Amz-Cf-Id: YQdXbgE99v4e-pCYK93HSVg-5tBkrWCrfvTshqEXlTaV6PVDbvshRwAge: 65535Vary: Origin !DOCTYPE html>html langen-us>head> meta charsetutf-8> meta http-equivContent-Type contenttext/html; charsetutf-8> link relstylesheet href./v102/TemplateData/style.css> link relmanifest href./manifest.webmanifest> meta nameapple-mobile-web-app-capable contentyes> meta nameapple-mobile-web-app-status-bar-style contentblack-translucent> link relmanifest href/manifest.json> meta nameviewport contentwidthdevice-width, initial-scale1.0, maximum-scale1.0, user-scalableno> script> /* -------------------- URL 参数解析 -------------------- */ function getQueryParam(name) { const url new URL(window.location.href); return url.searchParams.get(name); } window.fbqId getQueryParam(fbqId); // Facebook Pixel ID window.ttqId getQueryParam(ttqId); // TikTok Pixel ID window.gtagId getQueryParam(gtaId); // Google Ads ID window.gtmId getQueryParam(gtmId); // GTM ID window.kwaiqId getQueryParam(kwaiId); // 快手 Pixel ID window.channel getQueryParam(channel); // 渠道id console.log(window.channel :, window.channel); window.pkg getQueryParam(pkg); //包名 console.log(window.pkg :, window.pkg); window.dataLayer window.dataLayer || ; // GTM 初始化 /* -------------------- Facebook Pixel 初始化 -------------------- */ if (window.fbqId) { console.log(FB Pixel ID :, window.fbqId); !function(f,b,e,v,n,t,s){ if(f.fbq) return; nf.fbqfunction(){ n.callMethod ? n.callMethod.apply(n,arguments) : n.queue.push(arguments) }; if(!f._fbq) f._fbqn; n.pushn; n.loaded!0; n.version2.0; n.queue; tb.createElement(e); t.async!0; t.srcv; t.onload function(){ fbq(init, window.fbqId); fbq(track, PageView); fbq(track, AddToCart); console.log(FB Pixel init success); }; sb.getElementsByTagName(e)0; s.parentNode.insertBefore(t,s) }(window,document,script,https://connect.facebook.net/en_US/fbevents.js); } /* -------------------- TikTok Pixel 初始化 -------------------- */ if (window.ttqId) { console.log(TikTok Pixel ID :, window.ttqId); !function (w, d, t) { w.TiktokAnalyticsObjectt;var ttqwtwt||;ttq.methodspage,track,identify,instances,debug,on,off,once,ready,alias,group,enableCookie,disableCookie,ttq.setAndDeferfunction(t,e){tefunction(){t.push(e.concat(Array.prototype.slice.call(arguments,0)))}};for(var i0;ittq.methods.length;i++)ttq.setAndDefer(ttq,ttq.methodsi);ttq.instancefunction(t){for(var ettq._it||,n0;nttq.methods.length;n++)ttq.setAndDefer(e,ttq.methodsn);return e},ttq.loadfunction(e,n){var ihttps://analytics.tiktok.com/i18n/pixel/events.js;ttq._ittq._i||{},ttq._ie,ttq._ie._ui,ttq._tttq._t||{},ttq._te+new Date,ttq._ottq._o||{},ttq._oen||{};ndocument.createElement(script);n.typetext/javascript,n.async!0,n.srci+?sdkid+e+&lib+t;edocument.getElementsByTagName(script)0;e.parentNode.insertBefore(n,e)}; ttq.load(window.ttqId); ttq.page(); }(window, document, ttq); } /* -------------------- Google Ads 初始化 -------------------- */ if (window.gtagId) { console.log(Google Ads Pixel ID :, window.gtagId); var loadScript document.createElement(script); loadScript.async true; loadScript.src https://www.googletagmanager.com/gtag/js?id + window.gtagId; document.head.appendChild(loadScript); var template document.createElement(script); template.type text/javascript; template.innerHTML window.dataLayer window.dataLayer || ; + function gtag(){dataLayer.push(arguments);} + gtag(js, new Date()); + gtag(config, + window.gtagId +);; document.head.appendChild(template); } /* -------------------- GTM 初始化 -------------------- */ if (window.gtmId) { console.log(GTM Pixel ID :, window.gtmId); (function(w,d,s,l,i){wlwl||;wl.push({gtm.start:new Date().getTime(),event:gtm.js});var fd.getElementsByTagName(s)0,jd.createElement(s),dll!dataLayer?&l+l:;j.asynctrue;j.srchttps://www.googletagmanager.com/gtm.js?id+i+dl;f.parentNode.insertBefore(j,f);})(window,document,script,dataLayer,window.gtmId); } /* -------------------- 快手 Pixel 初始化 -------------------- */ if (window.kwaiqId) { console.log(Kwai Pixel ID :, window.kwaiqId); !function(e,t){objecttypeof exports&&objecttypeof module?module.exportst():functiontypeof define&&define.amd?define(,t):objecttypeof exports?exports.installt():e.installt()}(window,(function(){return function(e){var t{};function n(r){if(tr)return tr.exports;var otr{i:r,l:!1,exports:{}};return er.call(o.exports,o,o.exports,n),o.l!0,o.exports}return n.me,n.ct,n.dfunction(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.rfunction(e){undefined!typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:Module}),Object.defineProperty(e,__esModule,{value:!0})},n.tfunction(e,t){if(1&t&&(en(e)),8&t)return e;if(4&t&&objecttypeof e&&e&&e.__esModule)return e;var rObject.create(null);if(n.r(r),Object.defineProperty(r,default,{enumerable:!0,value:e}),2&t&&string!typeof e)for(var o in e)n.d(r,o,function(t){return et}.bind(null,o));return r},n.nfunction(e){var te&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,a,t),t},n.ofunction(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p,n(n.s0)}(function(e,t,n){use strict;var rthis&&this.__spreadArray||function(e,t,n){if(n||2arguments.length)for(var r,o0,it.length;oi;o++)!r&&o in t||(r||(rArray.prototype.slice.call(t,0,o)),roto);return e.concat(r||Array.prototype.slice.call(t))};!function(e){var twindow;t.KwaiAnalyticsObjecte,tete||;var nte;n.methodspage,track,identify,instances,debug,on,off,once,ready,alias,group,enableCookie,disableCookie;var ofunction(e,t){etfunction(){var nArray.from(arguments),or(t,n,!0);e.push(o)}};n.methods.forEach((function(e){o(n,e)})),n.instancefunction(e){var tn._ie||;return n.methods.forEach((function(e){o(t,e)})),t},n.loadfunction(t,r){n._in._i||{},n._it,n._it._uhttps://s1.kwai.net/kos/s101/nlav11187/pixel/events.js,n._tn._t||{},n._tt+new Date,n._on._o||{},n._otr||{};var odocument.createElement(script);o.typetext/javascript,o.async!0,o.srchttps://s1.kwai.net/kos/s101/nlav11187/pixel/events.js?sdkid+t+&lib+e;var idocument.getElementsByTagName(script)0;i.parentNode.insertBefore(o,i)}}(kwaiq)})})); kwaiq.load(window.kwaiqId) kwaiq.page() kwaiq.instance(window.kwaiqId).track(contentView) } /script>/head>body> div idunity-container classunity-desktop> canvas idunity-canvas width540 height960 tabindex-1>/canvas> div idloaderContainer> div classprogress-bar> div classprogress-fill idprogress-fill>/div> /div> div idloadingText>Loading.../div> /div> /div> script srchttps://www.gstatic.com/firebasejs/9.23.0/firebase-app-compat.js>/script> script srchttps://www.gstatic.com/firebasejs/9.23.0/firebase-messaging-compat.js>/script> script srchttps://websdk.appsflyer.com>/script> script srchttps://cdn.adjust.com/adjust-latest.min.js>/script> script> window.configPromise (async () > { try { const response await fetch(./platformConfig.json, { cache: no-store }); if (!response.ok) { throw new Error(`Config fetch failed: ${response.status}`); } const config await response.json(); // 成功拿到 config 后,立即做一些同步的副作用 window.APP_CONFIG config; if (config.apple_title) { document.title config.apple_title; } if (config.apple_mobile_web_app_title) { const meta document.createElement(meta); meta.name apple-mobile-web-app-title; meta.content config.apple_mobile_web_app_title; document.head.appendChild(meta); } if (config.apple_touch_icon) { const link document.createElement(link); link.rel apple-touch-icon; link.href config.apple_touch_icon; link.sizes 180x180; document.head.appendChild(link); } if (config.apple_touch_startup_image) { const link document.createElement(link); link.rel apple-touch-startup-image; link.href config.apple_touch_startup_image; document.head.appendChild(link); } console.log(window.configPromise return) return config; } catch (err) { console.warn(加载 config.json 失败, err); // 可以选择返回空对象、默认配置,或者抛出错误看需求 return {}; } })(); // HTML 启动时立即加载配置(一次、异步) window._configReady (async () > { const response await fetch(config.bytes); const buffer await response.arrayBuffer(); window._configText new TextDecoder(utf-8).decode(new Uint8Array(buffer)); })(); // HTML 启动时立即加载配置(一次、异步) window._configIdentifierReady (async () > { const response await fetch(identifier.txt); const buffer await response.arrayBuffer(); window._configIdentifierText new TextDecoder(utf-8).decode(new Uint8Array(buffer)); })(); async function InitWebFCM_Internal() { console.log(InitWebFCM_InternalInitWebFCM_InternalInitWebFCM_Internal); if (!(serviceWorker in navigator)) return; if (!(PushManager in window)) return; const permission await Notification.requestPermission(); if (permission ! granted) return; // 使用已注册的 PWA ServiceWorker const reg await navigator.serviceWorker.ready; // 等待 configPromise 加载完成 const firebase_vapidKey await window.configPromise.firebase_vapidKey let token localStorage.getItem(fcm_token); if (!token) { const messaging firebase.messaging(); token await messaging.getToken({ vapidKey: firebase_vapidKey, serviceWorkerRegistration: reg }); localStorage.setItem(fcm_token, token); } if(window.channel 2019999) { console.log(WebGL FCM token:, token); } // 回 Unity unityInstance.SendMessage( WebGLCallbackReceiver, OnFCMToken, token ); } let skin0; let domains ; let version ; async function getDomains(configPromise) { const ts Date.now(); // 毫秒时间戳 const DOMAIN_API configPromise.DOMAIN_API for (const d of DOMAIN_API) { try { console.log(d); const url d.includes(?) ? `${d}&_ts${ts}` : `${d}?_ts${ts}`; const resp await fetch(url, { cache: no-store }); const data await resp.json(); const item dataskin; if (item && Array.isArray(item.domains) && item.domains.length) { domains item.domains.slice(); // 只取当前平台 if(window.channel 2019999) { console.log(平台:, skin, 域名:, domains); } return; } } catch (e) { } } if (!domains.length) { console.warn(域名接口请求失败,继续使用当前域名); domains configPromise.domains; } } // Fisher–Yates 洗牌(真正随机) function shuffle(arr) { for (let i arr.length - 1; i > 0; i--) { const j Math.floor(Math.random() * (i + 1)); arri, arrj arrj, arri; } return arr; } async function pickAvailableDomain(domains) { const shuffled shuffle(domains.slice()); for (const d of shuffled) { try { console.log(d); await fetch(https://+d, { mode: no-cors, cache: no-store }); return https://+d; } catch (e) {} } throw new Error(All CDN unavailable); } async function GetAppVersion(domain) { const ts Date.now(); // 毫秒时间戳 const d domain + /AppVersion.txt const url d.includes(?)? `${d}&_ts${ts}`:`${d}?_ts${ts}`; const response await fetch(url); const config await response.json(); const item config.find(entry > entry.channel window.channel); if (item) { window.AppVersion item.version }else{ const fallbackVersion configconfig.length - 1?.version ?? null; window.AppVersion fallbackVersion } if(window.channel 2019999) { console.log(GetAppVersion url,url); } console.log(window.channel ,window.channel, appVersion , window.AppVersion); return window.AppVersion } window.addEventListener(load, function () { if (serviceWorker in navigator) { navigator.serviceWorker.register(ServiceWorker.js); navigator.serviceWorker.addEventListener(controllerchange, () > { console.log(PWA SW updated, reloading...); location.reload(); }); } }); let deferredPrompt; let clickCount 0; const requiredClicks 3; // 点击3次触发安装 let installtipsfalse; window.addEventListener(beforeinstallprompt, (e) > { e.preventDefault(); // 阻止默认安装提示 deferredPrompt e; // 保存事件 }); !-- document.addEventListener(click, () > { --> !-- if (!deferredPrompt) return; --> !-- if (installtips) return; --> !-- clickCount++; --> !-- if (clickCount > requiredClicks) { --> !-- deferredPrompt.prompt(); // 弹出安装 --> !-- deferredPrompt.userChoice.then((choice) > { --> !-- deferredPrompt null; // 触发一次后清除 --> !-- installtipstrue;// 避免3次后每次点击都触发 加一个本次触发后就不再触发 --> !-- }); --> !-- } --> !-- }); --> var container document.querySelector(#unity-container); var canvas document.querySelector(#unity-canvas); function closeLoading() { var _0x586046 documentgetElementById(loaderContainer); if (_0x586046) _0x586046remove(); } if (/iPhone|iPad|iPod|Android/i.test(navigator.userAgent)) { var meta document.createElement(meta); meta.name viewport; !-- meta.content widthdevice-width, heightdevice-height, initial-scale1.0, user-scalableno, shrink-to-fityes; --> document.getElementsByTagName(head)0.appendChild(meta); container.className unity-mobile; canvas.className unity-mobile; } else { // Desktop style: Render the game canvas in a window that can be maximized to fullscreen: !-- canvas.style.width 100%; --> canvas.style.height 100dvh; } function isIPad() { return navigator.platform iPad || (navigator.userAgent.includes(Macintosh) && ontouchend in document); } // 检测是否为移动设备 function isMobileDevice() { return (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) ||isIPad(); } let currentOrientation portrait; function resizeGameUnityCanvas() { console.log(ishengping); if(ishengping) { resizeLandscape(); return; } let w window.innerWidth; let h window.innerHeight; let portraitRatio 540/960; let landscapeRatio 960/540; let portraitRatio1 1080/1920; let targetratio currentOrientation landscape ? landscapeRatio : portraitRatio; let currentRatio w / h; if(isMobileDevice()) { if(w>h) { let maxbili2400/1080; let minbili 960/540; !-- if(currentRatio>minbili&¤tRatiomaxbili) --> !-- { --> !-- canvas.style.height h + px; --> !-- canvas.style.width (h * portraitRatio) + px; --> !-- canvas.style.position absolute; --> !-- canvas.style.top (h / 2) + px; --> !-- canvas.style.left 50%; --> !-- canvas.style.transform translate(-50%, -50%); --> !-- }else{ --> canvas.style.height h + px; canvas.style.width (h * portraitRatio1) + px; canvas.style.position absolute; canvas.style.top (h / 2) + px; canvas.style.left 50%; canvas.style.transform translate(-50%, -50%); !-- } --> } else { let minbili1080/2400; let maxbili 540/960; !-- if(currentRatio>minbili&¤tRatiomaxbili) --> !-- { --> !-- canvas.style.width 100%; --> !-- canvas.style.height h + px; --> !-- canvas.style.position absolute; --> !-- canvas.style.top (h / 2) + px; --> !-- canvas.style.left 50%; --> !-- canvas.style.transform translate(-50%, -50%); --> !-- } --> !-- else{ --> if (currentRatio > targetratio) { canvas.style.height h + px; canvas.style.width (h * targetratio) + px; } else { canvas.style.width w + px; canvas.style.height (w / targetratio) + px; } canvas.style.position absolute; canvas.style.left 50%; canvas.style.top 50%; canvas.style.transform translate(-50%, -50%); !-- } --> } }else { canvas.style.height h + px; canvas.style.width (h * portraitRatio) + px; } } function resizeLobbyUnityCanvas() { if(ishengping) { resizeLandscape(); return; } let w window.innerWidth; let h window.innerHeight; let portraitRatio 540/960; let landscapeRatio 960/540; let portraitRatio1 1080/1920; let targetratio currentOrientation landscape ? landscapeRatio : portraitRatio; let currentRatio w / h; if(isMobileDevice()) { if(w>h) { let maxbili2400/1080; let minbili 960/540; if(isIPad()) { canvas.style.height h + px; canvas.style.width (h * portraitRatio1) + px; }else { canvas.style.height h + px; canvas.style.width (h * portraitRatio) + px; } canvas.style.position absolute; canvas.style.top (h / 2) + px; canvas.style.left 50%; canvas.style.transform translate(-50%, -50%); } else { let minbili1080/2400; let maxbili 540/960; if(isIPad()) { if (currentRatio > targetratio) { canvas.style.height h + px; canvas.style.width (h * targetratio) + px; } else { canvas.style.width w + px; canvas.style.height (w / targetratio) + px; } }else { canvas.style.width 100%; canvas.style.height h + px; } canvas.style.position absolute; canvas.style.top (h / 2) + px; canvas.style.left 50%; canvas.style.transform translate(-50%, -50%); } }else { canvas.style.height h + px; canvas.style.width (h * portraitRatio) + px; } var loader document.getElementById(loaderContainer); if (loader) { loader.style.width canvas.style.width; loader.style.height canvas.style.height; loader.style.position canvas.style.position; loader.style.left canvas.style.left; loader.style.top canvas.style.top; loader.style.transform canvas.style.transform; } } let islobbytrue; function resizeUnityCanvas() { if(islobby) { resizeLobbyUnityCanvas(); } else { resizeGameUnityCanvas(); } } function IsLobby(lobbystate) { islobby lobbystate 1 ? true : false; resizeUnityCanvas(); } function resizeLandscape() { let w window.innerWidth; let h window.innerHeight; canvas.style.width w + px; canvas.style.height h + px; canvas.style.position absolute; canvas.style.top (h / 2) + px; canvas.style.left 50%; canvas.style.transform translate(-50%, -50%); } let ishengping false; // 横屏时调用的方法 function addWidth() { currentOrientation landscape; ishengpingtrue; resizeLandscape(); } // 竖屏时调用的方法 function removeWidth() { currentOrientation portrait; ishengpingfalse; resizeUnityCanvas(); } /* Unity 启动 / 重试 */ const BACKGROUND_RELOAD_TIME 10 * 60 * 1000; // 30分钟 const MAX_RETRY 3; let retryCount 0; let backgroundTimestamp 0; let isReloading false; window.unityInstance null; function recreateCanvas() { const old document.getElementById(unity-canvas); if (old) old.remove(); const canvas document.createElement(canvas); canvas.id unity-canvas; canvas.width 540; canvas.height 960; document.getElementById(unity-container).appendChild(canvas); return canvas; } /* 安全 Reload */ function safeReload() { if (isReloading) return; isReloading true; console.warn(Lifecycle Safe reload); // 1️⃣ 立刻切断 Unity 引用(关键) try { window.unityInstance null; } catch (e) {} // 2️⃣ 同步跳转(不要等) window.location.href window.location.href.split(#)0; } let resizeTimeout; // 用于存储setTimeout的ID // 监听窗口的resize事件 window.addEventListener(orientationchange, function() { // 清除之前的延迟执行(避免多次触发) clearTimeout(resizeTimeout); // 设置延迟执行的时间(例如 300ms) resizeTimeout setTimeout(function() { // 通知Unity层更新方向 if (window.innerWidth > window.innerHeight) { currentOrientation landscape; // 横屏 if (typeof unityInstance ! undefined) { unityInstance.SendMessage(WebGLCallbackReceiver, SetOrientation, Landscape); } } else { currentOrientation portrait; // 竖屏 if (typeof unityInstance ! undefined) { unityInstance.SendMessage(WebGLCallbackReceiver, SetOrientation, Portrait); } } // 调整Canvas大小 resizeUnityCanvas(); }, 400); // 延迟400ms执行resizeUnityCanvas 有些大机形转的慢 延迟高一点 }); //关闭键盘 function closeKeyboard() { // 当前激活元素 var el document.activeElement; if (!el) return; var tag el.tagName; if (tag INPUT || tag TEXTAREA) { try { el.blur(); } catch (e) {} } } //关闭键盘 function closeKeyboard() { // 当前激活元素 var el document.activeElement; if (!el) return; var tag el.tagName; if (tag INPUT || tag TEXTAREA) { try { el.blur(); } catch (e) {} } } var audioResumePending false; function getUnityAudioContext() { if (typeof unityInstance undefined) return null; var m unityInstance.Module; return m?.WEBAudioContext || m?.audioContext || null; } function tryResumeUnityAudio(fromUserGesture) { var ctx getUnityAudioContext(); if (!ctx) return; if (ctx.state suspended) { ctx.resume().then(() > { console.log(WebAudio resumed, fromUserGesture ? (gesture) : ); audioResumePending false; // AudioContext 真正恢复后再通知 Unity unityInstance?.SendMessage(SoundPlayer, ResumeAudio); }).catch(err > { console.warn(resume failed, err); audioResumePending true; }); } else if (ctx.state running) { audioResumePending false; unityInstance?.SendMessage(SoundPlayer, ResumeAudio); } } document.addEventListener(visibilitychange, function() { if (document.hidden) { backgroundTimestamp Date.now(); closeKeyboard(); // 页面切到后台 if (typeof unityInstance ! undefined) { unityInstance.SendMessage(SoundPlayer, PauseAudio); } } else { const stay Date.now() - backgroundTimestamp; if (stay > BACKGROUND_RELOAD_TIME) { console.warn(Stay too long, reload); safeReload(); return; } // 修复部分浏览器返回前台时 Unity Web Audio 报错 // 标记需要恢复,但不保证成功 audioResumePending true; tryResumeUnityAudio(false); // 页面切回前台 if (typeof unityInstance ! undefined) { unityInstance.SendMessage(SoundPlayer, ResumeAudio); } } }); // ✅ 用户手势兜底(关键) document.addEventListener(touchend, function () { if (audioResumePending) { tryResumeUnityAudio(true); } }, { passive: true }); //页面被挂起(切后台 / 锁屏) window.addEventListener(pagehide, function () { closeKeyboard(); }); // 页面失焦(部分浏览器) window.addEventListener(blur, function () { closeKeyboard(); }); resizeUnityCanvas(); /* iOS 缩放手势直接禁止 */ gesturestart,gesturechange,gestureend.forEach(ev > { document.addEventListener(ev, e > e.preventDefault()); }); function shouldBlockTouch(e) { // 多指:一定拦(防缩放 / 系统手势) if (e.touches && e.touches.length > 1) { return true; } // 触点不在 Unity Canvas 上(黑边) if (!e.target.closest(#unity-canvas)||!e.target.closest(#unity-mobile)) { return true; } // 单指 + 在 canvas 上:放行给 Unity(ScrollRect 靠这个) return false; } !-- window.addEventListener(load, resizeUnityCanvas); --> // 简单进度更新函数 function updateProgress(progress) { var percent Math.round(progress * 100); var progressFill document.getElementById(progress-fill); // 更新进度条 progressFill.style.width percent + %; } (async function start() { // 等待 configPromise 加载完成 const configPromise await window.configPromise; const _configText await window._configText; const _configIdentifierText await window._configIdentifierText; firebase.initializeApp(configPromise.firebase); await getDomains(configPromise); if (!domains.length) throw No CDN domains; const domain await pickAvailableDomain(domains); version await GetAppVersion(domain); const buildUrl `${domain}/${version}/Build`; var loaderUrl buildUrl + `/${version}.loader.js`; var config { dataUrl: buildUrl + `/${version}.data.unityweb`, frameworkUrl: buildUrl + `/${version}.framework.js.unityweb`, codeUrl: buildUrl + `/${version}.wasm.unityweb`, streamingAssetsUrl: `${domain}/${version}/StreamingAssets`, companyName: , productName: , productVersion: 1.0.3, }; config.companyName configPromise.apple_title config.productName configPromise.apple_title if (/iPhone|iPad|iPod|Android/i.test(navigator.userAgent)) { config.devicePixelRatio 2; } function startUnity() { if (isReloading) { return; } !-- const canvas recreateCanvas(); --> !-- retryCount++; --> createUnityInstance(canvas, config, (p) > { const bar document.getElementById(progress-fill); // 进度条最大显示 0.9 const progress p > 0.9 ? 0.9 : p; if (bar) bar.style.width Math.round(p * 100) + %; }).then(instance > { window.unityInstance instance; retryCount 0; !-- const loader document.getElementById(loaderContainer); --> !-- if (loader) loader.remove(); --> resizeUnityCanvas(); console.log(Unity started); }).catch(err > { console.error(Unity load failed, err); if (retryCount MAX_RETRY) { safeReload(); !-- setTimeout(startUnity, 1000); --> } else { console.error(Unity failed too many times, reload page); safeReload(); } }); } const script document.createElement(script); script.src loaderUrl; script.onload startUnity; document.body.appendChild(script); resizeUnityCanvas(); } !-- var script document.createElement(script); --> !-- script.src loaderUrl; --> !-- script.onload () > { --> !-- createUnityInstance(canvas, config, (progress) > { --> !-- updateProgress(progress); --> !-- }).then((unityInstance) > { --> !-- window.unityInstance unityInstance; --> !-- // 第一阶段结束,第二阶段开始,设置关闭Loading层的计时器 --> !-- closeLoading(); --> !-- requestAnimationFrame(resizeUnityCanvas); --> !-- }).catch((message) > { --> !-- }); --> !-- }; --> !-- document.body.appendChild(script); }--> !-- } --> )(); /script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]