iPhone和iPad
- 1
打开Safari
在Safari中访问tuttotracker.com。其他iPhone浏览器可能也可以,但Apple仍把好餐具锁在自己的抽屉里。
- 2
点击分享
点击分享按钮,也就是带向上箭头的方框。
- 3
选择添加到主屏幕
向下滚动并点击“添加到主屏幕”。如果出现“作为网页App打开”,请保持开启。
- 4
点击添加
点击“添加”确认。TUTTO图标会出现在主屏幕上,看起来可疑地正式。
安装应用
Tutto Tracker是一款网页应用。你可以直接从浏览器安装,获得独立图标和无浏览器栏的窗口。不需要应用商店、账户,也不用读47页连律师本人都不想看的条款。
在Safari中访问tuttotracker.com。其他iPhone浏览器可能也可以,但Apple仍把好餐具锁在自己的抽屉里。
点击分享按钮,也就是带向上箭头的方框。
向下滚动并点击“添加到主屏幕”。如果出现“作为网页App打开”,请保持开启。
点击“添加”确认。TUTTO图标会出现在主屏幕上,看起来可疑地正式。
在Chrome中访问tuttotracker.com。
点击右上角的三个点。
点击“安装应用”或“添加到主屏幕”。Android偶尔会改文字,大概是为了锻炼大家的观察力。
点击“安装”。TUTTO图标会出现在应用列表中,并以独立窗口打开。
Tutto Tracker会在独立窗口中打开并使用TUTTO图标。本质上仍是同一个网站,只是穿了条像样的裤子。
成功在线打开一次后,本地游戏、规则、技巧和本指南无需网络也能使用。
本地分数、玩家姓名和设置留在你的设备上。没有账户,也没有云端资料偷偷评价你的自定义规则。
共享房间通过房间代码同步,因此需要联网。离线骰子不太合群。
联网打开时,应用会检查新版本并更新离线文件,无需访问应用商店。
像其他应用一样删除图标即可。浏览器数据可能保留,除非你另外清除。
Web App Manifest提供应用名称、图标、主题色、启动URL和独立显示模式。浏览器依据这些元数据在主屏幕创建应用;它没有原生封装,也没有应用商店二进制文件。
Service Worker位于应用与网络之间。它会把计分器、六种语言的规则、技巧和安装指南,以及共享CSS、图标和manifest预先存入带版本号的Cache Storage缓存。
页面导航采用network-first:联网时优先使用最新内容,离线时回退到缓存页面。静态资源采用cache-first。/api/请求会被排除,因此在线房间响应不会被当作可复用的离线数据。
本地游戏以JSON形式序列化到localStorage。分数、玩家姓名、设置和自定义规则只保留在该设备的当前浏览器配置中。清除网站数据也会删除这些状态。
Cloudflare Worker提供房间API,并把共享游戏状态存入Cloudflare D1。客户端通过PUT写入变更,并大约每秒轮询一次较新的状态。API响应使用no-store;定时任务会删除30天未变更的房间。
Service Worker缓存使用明确的版本号。部署时会递增版本;新worker下载当前核心文件、激活、删除旧缓存并接管已打开的客户端。下一次导航即可使用新版本。