[.NET MAUI]Androidアプリのキーストアを紛失

ICT

状況

.NET MAUIプロジェクトで、Androidアプリの発行時に設定していたSigning Identifyを紛失してしまい、アプリの更新ができなくなって困ったお話です。

原因は、iOSシミュレーターのデバッグがうまくいかず、この鍵のあるフォルダを消してしまったこと。
よくXamarin関連でトラブったときの対応として、

%LOCALAPPDATA%\Xamarin

このフォルダ全削除ってあるけど、

%LOCALAPPDATA%\Xamarin\Mono for Android

この配下に鍵が入ってるという罠。
でもバックアップしていなかった自分が悪い。。。.NET MAUIの公式にもちゃんと記載が、、、

キーストアとパスワードは Visual Studio ソリューションに保存されません。 そのため、このデータは必ずバックアップしてください。 紛失した場合、同じ署名 ID でアプリに署名できなくなります。

Google Play ディストリビューション用の .NET MAUI Android アプリを公開する - .NET MAUI
Google Play ディストリビューション用の .NET MAUI Android アプリを公開する方法について説明します。

これは当たり前なのですが、Visual Studioでアプリの発行時に新しいキーストアを作成しても、Google Play ConsoleのApp Bundleの更新はできないのです。

環境

OS: Windows 11 Pro
IDE: Visual Studio Community 2022 Version 17.13.6

対応手順

古い情報だと、Play App Signing未設定でApp Bundleを登録済みの場合、キーストアの更新は不可能で、新しいアプリとして登録し直すしかないとあったのですが、Google Play Console側で[アップロード鍵]の変更で解決できました。

新しいアップロード鍵の作成

Google Play ディストリビューション用の .NET MAUI Android アプリを公開する - .NET MAUI
Google Play ディストリビューション用の .NET MAUI Android アプリを公開する方法について説明します。

上記ページを参考にVisual Studioで[Android キーストア の作成]

Aliasを「vs」で作成した場合、新しいキーストアは下記に保存される。

%LOCALAPPDATA%\Xamarin\Mono for Android\Keystore\vs\vs.keystore
Use Play App Signing - Play Console Help
With Play App Signing, Google manages and protects your app's signing key for you and uses it to sign optimized distribu...

上記ページを参考に、コマンド実行。

拡張子は.jksに変更しなくても問題ありません。

keytool -export -rfc -keystore vs.keystore -alias vs -file vs_certificate.pem

キーストアのバックアップ

%LOCALAPPDATA%\Xamarin\Mono for Android\Keystore\vs\vs.keystore

このファイルを何らかの方法でバックアップしましょう。

アップロード鍵のリセットのリクエスト

  • Google Play Consoleにログイン
  • 対象のアプリを表示
  • 左メニューから[テストとリリース]-[設定]-[アプリの署名]を開く
  • [アップロード鍵のリセットのリクエスト]
    • アップロード鍵をリセットする理由を選択:
      • [アップロード鍵を忘れた]
    • [アップロード鍵の証明書から生成された.PEMファイルをアップロードする]
      • 上記手順で作成した.PEMファイルをアップロード
    • [リクエスト]ボタンを押下
  • メール「アップロード鍵のリセット リクエストを受け取りました」を受信
  • 新しいアップロード鍵が有効になるまで48時間待機(有効になる日時はメール本文に記載あり)
    • この間、新しいApp BundleやAPKをアップロードできない
アップロード鍵のリセットのリクエスト

アプリの発行

48時間後に、Visual Studioから発行で正常にアプリを更新できます。

コメント

タイトルとURLをコピーしました