Ты мне доверяешь?
В течение некоторого времени веб-приложения можно было преобразовать в нативное приложение с небольшими усилиями, в зависимости от сложности приложения. Например, такие фреймворки, как Capacitor.js или Cordova, предлагают такую функциональность и также являются программным обеспечением с открытым исходным кодом. Чтобы предложить веб-приложение в качестве нативного, вы должны создать веб-приложение локально, указать фреймворку, где находится этот результат сборки, и в основном подождать, пока приложения не будут созданы. Основная концепция заключается в том, что ваш веб-сайт просто работает во встроенном веб-просмотре. Что ж, теперь ситуация снова изменится, когда Google представит «Надежную веб-активность».
PWA ++
Что такое «Надежная веб-активность» (TWA)? Вот суть:
- «Надежная веб-активность» используется в контексте Google Play Store и собственного приложения Android, созданного из PWA.
- Вы можете подтвердить право собственности на свой PWA для приложения Android, создав учетные данные под названием «assetlinks» - здесь нужен Google Play.
- загрузив этот файл «assetlinks» в общедоступный каталог вашего веб-приложения, Google может подтвердить право собственности на PWA, когда родное приложение Android получит его, и никто, кроме вас, не сможет его создать.
Хорошо, это был краткий обзор концепции TWA. Напомним, что «доверительная» часть относится к проверке права собственности на ваш PWA.
Один новый TWA, пожалуйста!
Хорошо, но как это на самом деле работает? Настройка на самом деле очень проста и не займет больше часа. Вот как это делается:
Во-первых, убедитесь, что ваш PWA настроен правильно:
- manifest.json доступен и проверен
- значок + имя верны
- вы можете быстро проверить эти изменения в DevTools
Основная библиотека, которая возьмет на себя всю тяжелую работу, называется «bubblewrap», пакет Node.js, который предоставляет интерфейс командной строки, который будет использоваться на протяжении всего руководства.
Сначала создайте новый каталог для TWA под названием «twa». Внутри «twa» мы создадим еще один каталог под названием «android». Сам «twa» будет содержать node_modules, а «android» - собственно собственное приложение для Android.
Убедитесь, что вы находитесь внутри «twa», чтобы запустить новый проект npm:
npm init -y
Теперь давайте добавим CLI в качестве зависимости разработчика:
npm i -D @bubblewrap/cli
Это все, что нам сейчас нужно. Тогда давайте запустим проект "пузырчатая пленка". Просто замените домен своим и проверьте, где находится «manifest.json». Вам будет предложено указать местоположения Java SDK + Android SDK, которые вы можете использовать повторно, если они уже установлены:
npx bubblewrap init --manifest=https://your-pwa.com/manifest.json
Продолжая, пора ответить на несколько вопросов с помощью интерфейса командной строки. В зависимости от доступных метаданных в вашем PWA большинство полей уже будут предварительно заполнены:
npx bubblewrap build
Теперь, когда ваш PWA идентифицирован и приложение для Android создано, пришло время провести быстрый дымовой тест. Либо запустите эмулятор, либо используйте свое тестирующее реальное устройство по выбору:
npx bubblewrap install
Если все работает нормально, вы увидите свое веб-приложение как работающее родное приложение для Android. Отлично, самое сложное уже сделано!
Осталось создать проверочный файл под названием «assetlinks.json». Поскольку я предполагаю, что вы хотите загрузить набор приложений в Google Play, важно отметить, как на самом деле осуществляется подписание:
- Google Play будет управлять ключами подписи за вас, а это значит, что нам нужно найти соответствующее значение SHA-256 в консоли Google Play.
- «Bubblewrap», возможно, уже создал файл «assetlinks» с одной записью, которая содержит другой хеш SHA-256 - не беспокойтесь, мы будем использовать оба ключа из Google Play и сгенерированный.
Если файл «assetlinks» не был создан, я продолжил загружать «Asset Links Tool» (рекомендованный Google, ссылка в дополнении) на мое тестовое устройство и считывать SHA-256 из установленного подписанного тестового приложения, созданного и устанавливается «пузырчатой пленкой». Затем вы можете использовать этот json. Просто убедитесь, что вы продублировали первую запись и заменили SHA-256 на один из Google Play, в результате чего получился файл «assetlinks» с двумя записями, различающимися только своими ключами подписи.
Почти готово, теперь вам просто нужно создать новый каталог в общей папке существующего PWA и один раз загрузить приложение:
.well-known/assetlinks.json
Теперь Google может прочитать его и подтвердить право собственности.
Еще один шаг...
Осталось только загрузить релиз-пакет в Google Play и выпустить его! Да, это действительно так просто. Google действительно продвигает то, что возможно в Интернете, и не боится пробовать что-то новое. «Надежная веб-активность» - это еще один новый способ преодоления разрыва между Интернетом и нативной системой, хотя в настоящее время он ограничен Android.
О, и да: конечно, это веб-приложение - это PWA и TWA. Вы можете проверить приложение для Android в Google Play, ссылка находится ниже в приложении.
- Tom