【Android Studio】APKファイルの書き出し方法!デバッグ用とリリース用
この記事からわかること
- Android StudioでKotlinで開発したアプリを書き出す方法
- APKファイルとは?
- デバッグ用と本番用の書き出し方法
- KeyStoreファイルの作成方法
- Android App Bundle(aab)ファイルの書き出し方法
- private_key.pepkとは?
index
[open]
\ アプリをリリースしました /
友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-
posted withアプリーチ
環境
- Android Studio:Koala
- Kotlin:1.9.0
APKファイルとは?
APK(Android Application Package)ファイルとはAndroidアプリをパッケージ化したファイル形式です。簡単にいうとアプリ本体をファイル化したものになります。つまりこのファイルを然るべき流れで実機に入れ込んでテストしたり、Google Play Consoleにアップロードすることでアプリを配布することができるようになります。
APKファイルの中にはアプリを動作させるために必要となるコードやリソース、マニフェストファイル(AndroidManifest.xml)などが含まれており、デジタル署名されているためアプリケーションの正当性が証明されています。
APKファイル自体はAndroid Studioから簡単にエクスポートすることが可能になっています。またその際にはデバッグ用と本番公開用で書き出す方法が異なるので適切な方を選択してAPKファイルを生成する必要があります。
デバッグ用APKファイルの書き出し方法
Android Studioを起動させ、上部メニューの「Build」>「Build Bundle(s)/APK(s)」>「Build APK(s)」をクリックします。APKファイルの生成が完了すると右下にメッセージが表示され、「locate」をクリックすると生成されたディレクトリを開いてくれます。
生成されるディレクトリのパス
/Users/[ユーザー名]/Desktop/[プロジェクト名]/app/build/outputs/apk/release
生成されるファイル
- app-release.apk
- output-metadata.json
app-release
となっていますがこれはビルド環境(buildTypes)に指定しているものが適応されるので別でビルド環境を構築している場合は都度上部メニューの「Build」>「Select Build Variant...」から環境を切り替えて書き出してください。
本番用のAPKファイルの書き出し方法
2021年8月以降よりリリースの際はAPKではなくAABファイルへ変更になったようです。
Google Play ConsoleにアップロードするAPKファイルはデバッグ用ではなく署名されたものが必要になります。書き出し方法が異なるので注意してください。またアップロードする際には秘密鍵や証明書の保存、管理、および使用に関連する情報を格納したKeyStoreファイルを用意する必要があります。APK書き出しの流れで作成できるのでそれも合わせて作成していきます。
Android Studioを起動させ、上部メニューの「Build」>「Generate Signed Bundle」>「Build APK(s)」をクリックします。すると以下のポップアップが表示されるので「APK」を選択して「Next」をクリックします。
KeyStoreを作成済みであればパスを指定しますが、初回なら「Create new...」をクリックします。
KeyStoreを作成するための情報を入力していきます。
入力する情報
項目 | 概要 |
---|---|
Key store path | KeyStoreファイルを保存したいパス(ファイル名はKeyStore.jksがただしいかも) 拡張子なしでも動作に問題はありませんでした。 |
Password | パスワード |
Confirm | パスワード再入力 |
Alias | 別名 |
Password | パスワード |
Confirm | パスワード再入力 |
Validity(years) | 使用期限(デフォルト25年) |
First and Last Name | 作成者名 |
Organizational Unit | 組織単位名 |
Organization | 組織名 |
City or Locality | 都市、地域名 |
State or Province | 州名、地方名 |
Country Code(XX) | 国コード |
入力が完了したら「OK」をクリックし、先ほどの画面に戻るので入力内容を確認して「Next」をクリックします。続いてビルド環境を追加していた場合は選択できるので本番用の環境を選択し「Create」をクリックします。
APKファイルの生成が完了すると同じように右下にメッセージが表示され、「locate」をクリックすると生成されたディレクトリを開いてくれます。
生成されるディレクトリのパス
/Users/[ユーザー名]/Desktop/[プロジェクト名]/app/release
実機でAPKファイルを取り込んで動作確認する
開発用に作成したAPKファイルは実機に入れ込んで開くことで動作確認をすることができます。実機への何かしらの手段でAPKファイルを送信し、実機側からAPKファイルをひらけばインストールすることができます。この際にセキュリティ的にインストールができない場合は設定から「この提供元のアプリを許可」をONにしておきます。
APKファイルを介さないでも開発者であればUSBやWi-Fiを経由してアプリを実機にインストールすることができます。
またテスターが複数人いる場合はFirebaseの「App Distribution」を利用するとAPKファイルをアップロードするだけで簡単い登録したテスターに配布することが可能です。
Android App Bundleファイルの書き出し方法
公式リファレンス:Android App Bundle について
2021年8月以降よりリリースのためにGoogle Play Consoleへアップロードする際はAPKファイルではなくAAB(Android App Bundle)ファイルに変更になったようです。
基本的な作成方法はAPKファイルと変わらないのでここで「APK」ではなく「Android App Bundle」を選んで進めるだけです。
あとはAPK同様にKeyStoreを作成し、パスを指定すれば同じ流れで作成することが可能です。生成されるディレクトリのパスも変わりません。
生成されるディレクトリのパス
/Users/[ユーザー名]/Desktop/[プロジェクト名]/app/release
またAABファイルを生成した際には指定したパスに「private_key.pepk(秘密鍵)」が生成されます。これもリリースの際に必要になるので大事に保管しておいてください。
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。