はじめに
マークシートシステム Mark2はBlazor WebAssemblyのPWAで動作するWeb版と、UWPで開発してMicrosoft Storeで公開しているデスクトップ版がありました。2023年8月まではWeb版をメインに開発して、デスクトップ版はメンテナンスのみをしている状況でした。
これまではデスクトップ版も利用されている状況だったのでデスクトップ版に大きな変更をしないで維持していましたが、ここ最近はWeb版への移行が進んできました。Microsoft StoreはPWAも登録できるようになっていて、Web版をPWAとしてMicrosoft Storeに登録することにしました。
パッケージの作成
マニフェストファイルを編集して、PWABuilderでパッケージを作成します。
マニフェストファイルの編集
Mark2の場合は以下のようにマニフェストファイルを編集しました。
{
"name": "Mark2 Desktop",
"short_name": "Mark2 Desktop",
"description": "Mark2 is an application for mark recognition.",
"categories": [
"utilities",
"education"
],
"start_url": "./",
"display_override": [
"window-controls-overlay"
],
"display": "standalone",
"background_color": "#ffffff",
"theme_color": "#03173d",
"shortcuts": [
{
"name": "Mark2 Desktop",
"url": "/",
"description": "Mark2 is an application for mark recognition."
}
],
"prefer_related_applications": false,
"icons": [
{
"src": "icon-512.png",
"type": "image/png",
"sizes": "512x512",
"purpose": "any"
},
{
"src": "icon-192.png",
"type": "image/png",
"sizes": "192x192",
"purpose": "any"
}
],
"screenshots": [
{
"src": "screenshot-1.png",
"sizes": "1024x768",
"type": "image/png"
}
],
"orientation": "any",
"edge_side_panel": {}
}
マニフェストファイルを編集したらデプロイしてWebに公開します。PWABuilderを開いて、PWAのURLを指定してStart
ボタンをクリックします。
マニフェストファイルの検証がされて、その結果が表示されます。私が作成したマニフェストファイルだとRequired
はすべて満たしていますが、Recommended
とOptional
はすべてを満たすことはできていません。
MDNにマニフェストファイルに関するドキュメントがあったので、これを参考に記入をしていきました。何を記入すればよいかわからなかった項目は未記入のままにしているので、これから記入方法がわかった項目は記入していきたいと思います。
Microsoft Storeの登録情報を確認
PWABuilderでPackage for Stores
のボタンをクリックすると、各種ストア向けのパッケージの作成画面が開きます。Windows
を選択すると以下のような入力画面が表示されます。
この画面でPackage ID
、Publisher display name
、Publisher ID
を入力します。Microsoft Storeに既存のアプリがある場合、これらの情報はパートナーセンターの製品管理 > 製品ID
で確認することができます。
Microsoft Storeにパッケージを登録
作成したパッケージをダウンロードしてMicrosoft Storeに登録します。
DisplayNameが一致していない場合のエラー
Microsoft Storeにパッケージを登録した際、DisplayNameとマニフェストファイルのアプリ名が一致していないとこのパッケージのマニフェスト (Package/Properties/DisplayName) では、予約していない表示名が使用されています。
というエラーが表示されます。マニフェストファイルのアプリ名を修正してパッケージを再作成しましょう。
Microsoft Storeの審査
Microsoft Storeに提出すると審査され、不備などがあるとレポートが返ってきます。Mark2 Desktopの場合、操作手順が以前のバージョンのまま変更していなかったのでエラーが出ていたようで、この点を修正して再提出して、審査に合格しました。
おわりに
これまではUWPとBlazor WebAssemblyの両方をメンテナンスしていたので、これでBlazor WebAssemblyに統一できて、メンテナンスが簡単になりそうです。