build: v6 — WebView热更新修复 + fetch跨域设置
- versionCode 5→6 - WebView allowFileAccessFromFileURLs + mixedContent - index.html 版本号v6 - index.html fetch检查更新+下载热更新完整链路
This commit is contained in:
@@ -3,45 +3,49 @@
|
||||
<style>
|
||||
body{font-family:monospace;background:#0f172a;color:#e2e8f0;padding:16px;margin:0}
|
||||
h1{font-size:18px;color:#38bdf8}
|
||||
.btn{display:block;width:100%;padding:14px;margin:8px 0;border:none;border-radius:8px;
|
||||
font-size:16px;cursor:pointer}
|
||||
.btn{display:block;width:100%;padding:14px;margin:8px 0;border:none;border-radius:8px;font-size:16px;cursor:pointer}
|
||||
.btn-check{background:#1e40af;color:#fff}
|
||||
.btn-download{background:#15803d;color:#fff}
|
||||
.log{background:#1e293b;padding:12px;border-radius:8px;margin-top:12px;
|
||||
max-height:300px;overflow-y:auto;font-size:12px;white-space:pre-wrap}
|
||||
.log{background:#1e293b;padding:12px;border-radius:8px;margin-top:12px;max-height:300px;overflow-y:auto;font-size:12px;white-space:pre-wrap}
|
||||
.info{color:#94a3b8;font-size:12px;margin:4px 0}
|
||||
.badge{display:inline-block;background:#f59e0b;color:#000;padding:2px 8px;border-radius:4px;font-size:11px;margin-left:8px}
|
||||
</style></head><body>
|
||||
<h1>Yuzu GCA</h1>
|
||||
<div class="info">version <span id="ver">v0.1.0-dav-android-5</span></div>
|
||||
<div class="info">version <span id="ver">v0.1.0-dav-android-6</span></div>
|
||||
<button class="btn btn-check" onclick="checkUpdate()">检查更新</button>
|
||||
<button class="btn btn-download" onclick="applyUpdate()" id="btnApply" disabled>下载更新</button>
|
||||
<div class="log" id="log"></div>
|
||||
<script>
|
||||
var dlUrl='',dlVer='';
|
||||
var BASE='https://git.childish-ghost.com/LukeMackin/Yuzu-GCA/raw/branch/main/ota';
|
||||
|
||||
function log(m){document.getElementById('log').innerText+=m+'\n'}
|
||||
|
||||
function checkUpdate(){
|
||||
log('正在检查...');
|
||||
fetch('https://git.childish-ghost.com/LukeMackin/Yuzu-GCA/raw/branch/main/ota/version.txt')
|
||||
.then(r=>{if(!r.ok)throw Error('网络错误');return r.text()})
|
||||
.then(t=>{t=t.trim();log('远程: '+t);
|
||||
log('checking '+BASE+'/version.txt ...');
|
||||
fetch(BASE+'/version.txt',{cache:'no-store'})
|
||||
.then(r=>{if(!r.ok)throw Error('HTTP '+r.status);return r.text()})
|
||||
.then(t=>{t=t.trim();log('remote: '+t);
|
||||
var local=document.getElementById('ver').innerText;
|
||||
if(t!==local){dlVer=t;dlUrl='https://git.childish-ghost.com/LukeMackin/Yuzu-GCA/releases/download/'+t+'/index.android.bundle';
|
||||
log('有新版本!');document.getElementById('btnApply').disabled=false}
|
||||
else log('已是最新')})
|
||||
.catch(e=>log('失败: '+e.message))
|
||||
if(t!==local){dlVer=t;dlUrl=BASE+'/h5/index-v6.html';
|
||||
log('*** NEW VERSION: '+dlVer+' ***');document.getElementById('btnApply').disabled=false}
|
||||
else log('up to date')})
|
||||
.catch(e=>log('ERR: '+e.message))
|
||||
}
|
||||
|
||||
function applyUpdate(){
|
||||
log('下载中...');
|
||||
fetch(dlUrl).then(r=>{if(!r.ok)throw Error('下载失败');return r.text()})
|
||||
.then(t=>{localStorage.setItem('bundle',t);localStorage.setItem('ver',dlVer);
|
||||
log('下载完成,重启生效');location.reload()})
|
||||
.catch(e=>log('失败: '+e.message))
|
||||
log('downloading '+dlUrl+' ...');
|
||||
fetch(dlUrl,{cache:'no-store'})
|
||||
.then(r=>{if(!r.ok)throw Error('HTTP '+r.status);return r.text()})
|
||||
.then(t=>{localStorage.setItem('gca_html',t);localStorage.setItem('gca_ver',dlVer);
|
||||
log('OK reloading...');setTimeout(function(){location.reload()},400)})
|
||||
.catch(e=>log('ERR: '+e.message))
|
||||
}
|
||||
window.onload=function(){
|
||||
var b=localStorage.getItem('bundle'),v=localStorage.getItem('ver');
|
||||
if(b&&v){
|
||||
document.getElementById('ver').innerText=v;
|
||||
document.write(b);document.close()
|
||||
|
||||
(function(){
|
||||
var b=localStorage.getItem('gca_html'),v=localStorage.getItem('gca_ver');
|
||||
if(b&&v&&v!==document.getElementById('ver').innerText){
|
||||
document.open();document.write(b);document.close()
|
||||
}
|
||||
}
|
||||
})();
|
||||
</script></body></html>
|
||||
|
||||
Reference in New Issue
Block a user