PWAをスマホの共有メニューには登録できない
PWAでSNSっぽいアプリを作った時、 「シェアボタンで他のアプリから呼び出したい」 というニーズが出てくる。
ネイティブアプリならIntent Systemを利用してできるが、PWAだとどうするのか。
結論から言うと、現時点では不可能(今後もできない可能性)
まず、共有に関してググると、いくつかのキーワード(ディープリンク-Deeplink、URLスキーム-Custom URL Schemeなど)や記事が挙がる。ざっくりまとめると
- PWAから他のアプリ
- TwitterやFacebookなどが提供するShareAPIを利用
- Chorome61 for AndroidでWeb Share API
- 他のアプリからPWA
- PWAがインストールされている場合は、
https://myapp.com/
のようになっているリンクは自動でPWAの呼び出し対象 - それ以外はなし
- PWAがインストールされている場合は、
のようになっており、現状では、自作PWAのスコープ内へのアクセスの自動呼び出し以外の共有方法は以下の
- × 他アプリ -> 共有メニュー -> PWA(特定ページ)
- ○ 他アプリ -> 共有メニュー -> クリップボードにコピー -> PWA開く -> 特定のアクション
しかないようだ。
PWAをゴリゴリに推してるGoogleさんは、とりあえずAndroidだけでも良いので、ここら辺をなんとかして欲しい。
ついでにいうと、自分とこのPWAだけGoogle Playに載せるとかしないで、一般にも門戸を開いて欲しいところである。