《告你什么文集》游戏介绍
《告你什么文集》是一款个人博客,你可以在这里离线浏览内容,不用受到网络的约束!而且软件采用的是全新的架构方式,类似与小程序一样的东西。你可以在这里学习到很多知识,了解其工作的原理。还有许多优点你可以一点点的了解哦!
相关介绍
这个App是使用Android TWA构建的
PWA,即Progressive-Web-App,渐进式网络应用,概念有点类似于微信小程序,和MIUI的快应用,但是比他们更简单,没有平台依赖性,你只需在浏览器中访问支持PWA的网页,就能收到安装提示。
PWA可以
让你离线浏览内容,摆脱对于网络的束缚
提示安装到桌面,提升用户粘性/依赖度
即使没有打开网页,也能主动推送通知
即刻安装,免除对于存储空间的考虑
工作原理
W3C 组织早在 2014 年 5 月就提出过 Service Worker 这样的一个 HTML5 API ,主要用来做持久的离线缓存。
浏览器中的 javaScript 都是运行在一个单一主线程上的,在同一时间内只能做一件事情。随着 Web 业务不断复杂,我们逐渐在 js 中加了很多耗资源、耗时间的复杂运算过程,这些过程导致的性能问题在 WebApp 的复杂化过程中更加凸显出来。
软件特点
一个独立的 worker 线程,独立于当前网页进程,有自己独立的 worker context。
一旦被 install,就永远存在,除非被手动 unregister
用到的时候可以直接唤醒,不用的时候自动睡眠
可编程拦截代理请求和返回缓存文件,缓存的文件可以被网页进程fetch到
离线内容开发者可控
能向客户端推送消息
不能直接操作 DOM
必须在 HTTPS 环境下才能工作
异步实现,内部大都是通过Promise实现
所以我们基本上知道了 Service Worker 的伟大使命,就是让缓存做到优雅和极致,让 Web App 相对于 Native App 的缺点更加弱化,也为开发者提供了对性能和体验的无限遐想。[1]
实现过程
Chrome 将在您的应用符合以下条件时自动显示横幅(添加到桌面的提示):
拥有一个网络应用清单文件(manifest.json),该文件至少具有:
一个 short_name(用于主屏幕)
一个 name(用于横幅中)
一个 192x192 png 图标(图标声明必须包含一个 mime 类型的 image/png)
一个加载的 start_url
拥有一个在您的网站上注册的服务工作线程(service worker)
通过HTTPS提供(这是使用服务工作线程的一项要求)。
被访问至少两次(第一次访问执行安装和激活,第二次访问生效,提示安装到桌面),这两次访问至少间隔五分钟。