📌  相关文章
📜  如何构建渐进式 Web 应用程序并将其提交到 Play 商店?

📅  最后修改于: 2021-10-21 04:59:56             🧑  作者: Mango

渐进式 Web 应用程序 (PWA)是一种使用 Web 技术开发的应用程序,可以像传统应用程序一样安装在任何设备上。创建一个简单的 PWA 非常容易,因为它涉及向项目添加两个重要文件manifest.jsonserviceworker.js 。之后,PWA 就可以安装在任何操作系统上了。

How-to-Build-Progressive-Web-Application-and-Submit-it-to-The-Playstore

按照在 5 分钟内制作一个简单的 PWA 教程来构建一个 PWA(或)按照下面给出的步骤来创建一个 PWA。

步骤 1:在放置 index.html 文件的同一目录中创建一个manifest.json 文件。此文件包含应用程序名称、启动 URL、主题颜色和一些关于应用程序的 JSON 格式的更多基本信息

Javascript
{ 
"name": "Django Blogiee", 
"short_name": "Django Blogiee", 
"description": "PWA for django Blogiee", 
"start_url": "/", 
"display": "standalone", 
"scope": "/", 
"orientation": "any", 
"background_color": "#ffffff", 
"theme_color": "#000000", 
"status_bar": "default", 
"icons": [
       {
       "src": "/static/icons/Django-Blogiee.1b98d36d50a7.png", 
       "sizes": "512x512", 
       "purpose": "any maskable"
       }
       ],
   "dir": "ltr", 
"lang": "en-US" }


Javascript
var staticCacheName = "django-blogiee-v" + new Date().getTime();
var filesToCache = [
    '/static/icons/Django-Blogiee.1b98d36d50a7.png',
];
  
self.addEventListener("install", event => {
    this.skipWaiting();
    event.waitUntil(
        caches.open(staticCacheName)
            .then(cache => {
                return cache.addAll(filesToCache);
            })
    )
});
  
self.addEventListener("fetch", event => {
    event.respondWith(
        caches.match(event.request)
            .then(response => {
                return response || fetch(event.request);
            })
            .catch(() => {
                return caches.match('/offline/');
            })
    )
});
});


Javascript


第 2 步:创建serviceworker.js ,这是一个与 manifest.json 位于同一目录中的 JavaScript 文件,用于处理 PWA 应用程序的安装和缓存。

Javascript

var staticCacheName = "django-blogiee-v" + new Date().getTime();
var filesToCache = [
    '/static/icons/Django-Blogiee.1b98d36d50a7.png',
];
  
self.addEventListener("install", event => {
    this.skipWaiting();
    event.waitUntil(
        caches.open(staticCacheName)
            .then(cache => {
                return cache.addAll(filesToCache);
            })
    )
});
  
self.addEventListener("fetch", event => {
    event.respondWith(
        caches.match(event.request)
            .then(response => {
                return response || fetch(event.request);
            })
            .catch(() => {
                return caches.match('/offline/');
            })
    )
});
});

第 3 步:使用 index.html 中的

最后,你已经完成了一个 PWA。 PWA 可以帮助您将您的网站变成用户智能手机中的应用程序。 Google Map Go、Twitter liteInstagram Lite 的一些示例。如果您清楚地查看 PWA,他们不会使用传统的 APK 文件进行安装。所以这些 PWA 可以提交到 Play 商店,但是我们可以从 Play 商店安装上述所有示例。谷歌使用一种称为可信网络活动(TWA)的技术使这成为可能。

谷歌表示“可信的网络活动让你的 Android 应用程序启动一个全屏浏览器选项卡,而无需任何浏览器 UI。此功能仅限于您拥有的网站,您可以通过设置数字资产链接来证明这一点。数字资产链接本质上由您网站上指向您的应用程序的文件和应用程序中指向您网站的一些元数据组成。当您启动 Trusted Web Activity 时,浏览器将检查数字资产链接是否已签出,这称为验证。如果验证失败,浏览器将回退到将您的网站显示为自定义选项卡。

对于本教程,我们使用网站 django-blogiee.herokuapp.com。你可以查看它的 manifest.json 和 serviceworker.js。

有以下三种方法可以做到这一点:

确保您的网站是完全兼容的 PWA。您可以使用 Google LightHouse 工具看起来像下图。

谷歌灯塔工具

灯塔报告

现在,如果您对 PWA 很满意,请访问 Microsoft 的 PWABuilder 网站并放置您网站的 URL,然后单击开始。如果您看到您的网站得分为 100,请单击“构建我的 PWA”。你会看到类似下图的东西。

微软的 PWA 生成器

pwabuilder.com 报告

然后你可以下载你的android包,可以提交到Play商店。甚至您还可以下载 Apple App Store、Windows Store 和 Galaxy 商店的软件包。

下载APK包

解压下载的 Zip 以获取 APK 文件以添加数字资产文件“assetlinks.json”。确保您的 assetlinks.json 文件可以在 URL https:///.well-known/assetlinks.json 中找到。