Google Apps ScriptでPWAが作れれば何と嬉しいか...といつも思ってました。個人で開発する際にはFirebaseとかVercelとか今時なんなっと出来ますが、会社の中でやろうとすると途端にハードルが上がります。
会社にG-suiteがあるならばその環境下で手軽にWebアプリをネイティブアプリ風にし利便性を向上させる事が出来ます。
ポイント
- 社内にG-suiteがあるならばHTMLをコストをかけずにホスティング出来る
- 画面が全画面になる為、ネイティブアプリ風
- Safariで動くが独立したスレッドとして動くので、単独のアプリライクに使える
解決していない事
- manifest.jsonやlink.relが設置できない為、アイコンの設定方法だけ実現出来ず
- manifest.jsonの配信が出来ない為、通常のWebホスティング程細かい設定は出来ない
今回使うもの
- G-suite
- Google Apps Script
やり方
Google Apps ScriptでHTMLを呼び出す時は通常以下のようになります。
function doGet() {
return HtmlService.createHtmlOutputFromFile("index")
.setTitle("sample")
.setFaviconUrl("https://xxx&.png")
}
これをただこのようにし、ホーム画面に設置してそこから起動するだけです。
function doGet() {
return HtmlService.createHtmlOutputFromFile("index")
.addMetaTag('viewport', 'width=device-width, initial-scale=1')
.addMetaTag('apple-mobile-web-app-capable','yes')
.addMetaTag('mobile-web-app-capable','yes')
.setTitle("sample")
.setFaviconUrl("https://xxx&.png")
}
するとPWAとして作成した時のように全画面、かつ独立スレッドでアプリライクに起動します。
今時そんなに高くもないのでローコードアプリサービスくらい使えば?はあるかもしれませんが、セキュリティの問題等で実現できない方はこんなやり方なら妥協点としていいんじゃないかと思います