Android アプリケーション パッケージに署名
「リリースに向けてアプリケーションを準備する」では、アーカイブ マネージャーを使用してアプリをビルドし、署名および公開するためにそれをアーカイブに配置しました。 このセクションでは、Android の署名 ID を作成する方法、Android アプリケーション用の新しい署名証明書を作成する方法、アーカイブしたアプリのアドホックをディスクに公開する方法について説明します。 結果として得られる APK は、アプリ ストアを経由せずに Android デバイスにサイドロードすることができます。
公開のためのアーカイブでは、[配布チャネル] ダイアログに 2 種類の配布方法が表示されます。 [アドホック] を選択します。
新しい証明書を作成する
[アドホック] を選択すると、次のスクリーンショットに示されているように、Visual Studio でダイアログの [署名 ID] ページが開きます。 .APK を公開するには、まず署名キー (証明書とも呼ばれます) で署名する必要があります。
既存の証明書を使用するには、[インポート] ボタンをクリックし、[APK の署名] に進みます。 または、+[] ボタンをクリックして、新しい証明書を作成します。
[Create Android Key Store]\(Android キー ストアの作成\) ダイアログが表示されます。このダイアログを使用して、Android アプリケーションの署名に使用できる新しい署名証明書を作成します。 このダイアログ ボックスに必要な情報 (赤で表示) を入力します。
次の例は、指定する必要がある情報の種類を示しています。 [作成] をクリックして、新しい証明書を作成します。
結果として得られるキーストアは、次の場所に存在します。
C:\Users\USERNAME\AppData\Local\Xamarin\Mono for Android\Keystore\ALIAS\ALIAS.keystore
たとえば、chimp を別名として使用する場合、上記の手順では、次の場所に新しい署名キーが作成されます。
C:\Users\USERNAME\AppData\Local\Xamarin\Mono for Android\Keystore\chimp\chimp.keystore
重要
AppData フォルダーは既定では非表示になっており、アクセスするには再表示する必要がある場合があります。
また、結果として得られるキーストア ファイルとパスワードは、必ず安全な場所にバックアップを作成しておきます - これはソリューションには含まれません。 (たとえば、別のコンピューターに移動したり Windows を再インストールしたことが原因で) キーストア ファイルを紛失した場合、以前のバージョンと同じ証明書を使用してアプリに署名できなくなります。
キーストアの詳細については、「キーストアの MD5 または SHA1 署名の検索」を参照してください。
APK に署名する
[作成] をクリックすると、新しいキー ストア (新しい証明書を含む) が保存され、次のスクリーンショットに示すように、[署名 ID] の下に一覧表示されます。 Google Play でアプリを公開するには、[キャンセル] をクリックして「Google Play に公開する」に進みます。 アドホックを公開するには、署名に使用する署名 ID を選択し、[名前を付けて保存] をクリックして独立したディストリビューション用にアプリを公開します。 たとえば、このスクリーンショットでは、(以前に作成した) chimp 署名 ID が選択されています。
次に、[アーカイブ マネージャー] に公開の進行状況が表示されます。 公開プロセスが完了すると、[名前を付けて保存] ダイアログが開き、生成された .APK ファイルを格納する場所を尋ねられます。
目的の場所に移動し、[保存] をクリックします。 キー パスワードが不明の場合、[署名パスワード] ダイアログが表示され、選択した証明書のパスワードが求められます。
署名プロセスが完了したら、[ディストリビューションを開く] をクリックします。
これにより、Windows エクスプローラーで生成された APK ファイルを含むフォルダーが開きます。 この時点で、Visual Studio は Xamarin.Android アプリケーションを配信可能な APK にコンパイルしています。 次のスクリーンショットは、公開の準備ができたアプリ MyApp.MyApp.apk の例を示しています。
次のステップ
アプリケーション パッケージがリリースの署名が付いたら、それを公開します。 後続のセクションでは、アプリケーションを公開する方法をいくつか説明します。