【Rails】個人開発のPWAをGoogle Playストアに掲載するときハマったこと

個人開発のWebアプリまちかどルートv6.0rc6をGoogle Playストアに掲載したときのメモです。

TWA + PWA

こちらの記事にもありますが、PWA(Progressive Web Apps)として構築したWebアプリならば、TWA (Trusted Web Activity)なるものを使用することでGoogle PlayストアにAndroidアプリとして登録できる、というので試してみました。

PWA2APKを使いました

こちらの記事を参考にしました。

ハマったこと

PWA2APKで作成したAPKファイルをGoogle Play Consoleを通じて登録しましたが、下記2点でハマりました。

1. SHA 256のコードを追記

PWA2APKによって作成されたassetlinks.jsonというファイルをhttps://<domain>/.well-known/assetlinks.jsonとなるようにアップロードするのですが、そのJSONファイルにGoogle Play Consoleの「アプリの署名」で得られるSHA 256のコードも追記しなければいけないそうです。

PWA2APK – Publishing PWA Android App on Playstore

2. ルーティングを設定

assetlinks.jsonというファイルをhttps://<domain>/.well-known/assetlinks.jsonで外部からアクセスできるよう、Railsのroutes.rbに追記しなければいけませんでした。言われてみれば当然ですね...。

  get '.well-known/assetlinks' => "wellknown#assetlinks"  

それに伴い、controllerのファイルも新規作成します。

class WellknownController < ApplicationController  

    def assetlinks  
        render file: '.well-known/assetlinks.json', layout: false, content_type: 'text/json'          
    end  

end  

あとがき

上記2点をクリアしなくても掲載およびインストールが可能です。ただし、URLバーというかアドレスバーが表示されてしまい、せっかくネイティブアプリのようにフルスクリーン表示するPWAが台無しになってしまいます。

おかげでスッキリ。
いろいろ試行錯誤しましたが、個人開発のWebアプリ(PWA)が無事にGoogle Playストアに掲載されました。