[Android] アプリを Google Play に公開、apkファイルの作成

google play 01 - [Android] アプリを Google Play に公開、apkファイルの作成
Android アプリを公開するには、apk ファイルの作成して Developer Console にアップロードします。まず公開用の apk 作成手順を確認しておきましょう。

Android Studio 3.6.3
API 29



apk の作成

 
アプリを公開するには、Signed APK というファイルを作ります。apkファイルとはWindowsで言うところのexeとかbinのようなもので実行ファイルになります。

signedとあるように署名が必要ですが、署名方法は

  1. 今までの開発側でマニュアルで固有のキーとキーストアーを作って自分で管理する方法
  2. アプリ署名キーの管理をGoogle Play App Signingを使って任せる方法があります。

アプリをリリースする上でこの他にも、リリースのサイズの最適化の
Android App Bundle
や、新しいアイコンの仕様に対応すること、ターゲットAPIの基準を満たすなどがあります。

Google Play Consoleがよく変わります。また近々変更があるということです。同じ画面にならないかもしれませんが、基本的な流れを押さえて読み解いてください
 

 

ターゲットAPIレベル

 
Androidアプリをリリースする上で重要なことがあります。

Play Console での対象 API レベルに関する要件

  • 2020年8月3日: 新しいアプリで、ターゲット API レベル 29(Android 10)以降が必須になります。
  • 2020年11月2日: 既存のアプリのアップデートで、ターゲット API レベル 29 以降が必須になります。
  • 以降毎年、targetSdkVersion の要件が上がります。

因みに2019年~2020年まではAPI 28, Android 9です

Androidは古い端末もたくさん存在するので、minSdkVersionはこれとは関係なく低いAPIレベルが設定できます。ただ、より広い範囲でのAPIの切り分けが必要になるので大変です

android share 00 100x100 - [Android] アプリを Google Play に公開、apkファイルの作成
Android 10 が2019年秋にリリース。それにしてもAndroidはOSのバージョンがたくさんあります。それに応じてAPIが新しく作...

 

鍵とキーストアを生成

 
release用のapkの作成ですが、Manualで署名する場合もGoogle Play による App Signing を使用する場合も途中まで同じです。

 
Android Studio のメニューから
「Build」「Generate Signed APK…」を選択
 
apk 01 - [Android] アプリを Google Play に公開、apkファイルの作成

Generate Signed Bundle or APKにて
Android App Bundle または APK を選択し、「Next」
(ここではAPKで進めていきます)

apk 02 - [Android] アプリを Google Play に公開、apkファイルの作成

 
Generated Signed APK のダイアログに以下入力していきます。
 
apk release2c - [Android] アプリを Google Play に公開、apkファイルの作成
 
Key store path:
初めてであれば「Create new…」として .jks  ファイルの置き場所を決めます。
Location は拡張子が「.jks 」のファルを作成することを想定してファイル名とパスを決めます。
以前に作成済であれば「Choose existing…」からファイルを指定
 
Key store password:
Password は自分で決めたパスワードを入力します。これはこの後のバージョンアップでもずっと使うので、ファイルとパスワードを忘れないように管理する必要があります。
「Next」

 
apk release3b - [Android] アプリを Google Play に公開、apkファイルの作成
 

Alias プロジェクト名など後で分かりやすいものを入力
Password 前と同じでも違っていてもいいのですが、
後々間違えないようにするため同じにしておくのもアリです
Validity(years) 使用期限、25年以上にする必要あり
First and Last Name 開発者名などです
Organization Unit 部署、チーム名など
City or Locality 市などの住所情報を入力
State or Province 州、省、県などの情報を入力
Country Code (XX) 日本は JP です

 
入力例:
 
apk 06b - [Android] アプリを Google Play に公開、apkファイルの作成
  
問題なければ「OK」

リリース用としてアプリに署名

 
リリース用 APK に署名します。

apk 03b - [Android] アプリを Google Play に公開、apkファイルの作成
 
Build Variants:
「debug」あるいは「release」を選びます。公開する場合は「release」です。
 
Signature Versions:
V1とV2がありますが、APK 署名スキーム v2 がAndroid 7.0から導入され、アプリのインストール時間を高速化したり、APK ファイルに無許可の変更が行われないようにするためスキームです。必須ではないとのことですがV2も選択して両方チェック入れておきましょう。
(V2だけだとGoogle Play COnsoleのアップロードでJarファイルがないというエラーになることあるかも)
 
「Finish」で完成です。
 
apk 04 - [Android] アプリを Google Play に公開、apkファイルの作成
 
この後、Generate Signed APK と表示され
 
apk 05 - [Android] アプリを Google Play に公開、apkファイルの作成
 
locateをクリックしてパスの内容を確認すると、「app-release.apk」ができています。

 

Google Play App Signing

 
Googleとしてはこちらを推奨しているようですし、メリットもあります。

以前の方法ではキーのパスワードがわからなくなったら終わりです。新しいアプリとしてリリースするしかなく、それまでのランキングはなくなり0からのスタートです。

これを使うとGoogleに問い合わせればなんとか復旧できるということです。

何年も前のプロジェクトで担当者が辞めて、キーの保管場所が分からないなどありがちです。

新規であればこの後Google Play Console でリリースの準備設定を行いますが、そこで 「Googleでアプリ署名鍵の管理、保護を行う」を有効にするとできます。

apk 10 - [Android] アプリを Google Play に公開、apkファイルの作成

以下を参考にしてください
アプリの署名 | Android Studio – Android Developers
APK に自動で署名するようビルドプロセスを設定する
 
既存のアプリに適応する場合:
Google Play Consoleが頻繁に変更され画面もよく変わるようなのでポイントだけ

  1. PEPKツールをダウンロードして、秘密鍵をエクスポートして暗号化
  2. その後できたものを「アプリ署名の秘密鍵」からアップロード。

「リリース管理」「アプリの署名」から入ります。
 
PEPKツールをダウンロードしてkeystoreがあるレベルにおきます。
そこでTerminalを使ってコードを打ちますが、それはコマンドが指定されているのでそれをコピペします。
 
ここで引数を設定します。
例えばkeystoreがある場所が
/Users/hoge/Desktop/_Android/HogeHage.keystore
aliasが HogeHage
出力ファイル名が hogehage.pem
とすると
 
keystore=HogeHage.keystore
alias=HogeHage
output=”/Users/hoge/Desktop/_Android/hogehage.pem”
 
と設定してコマンドを実行します。その後passwordを入力すればpemファイルが生成されています。
 

 
このpemファイルを「アプリ署名の秘密鍵」からアップロードすれば
「このアプリでは Google Play App Singing が有効です。」となります。
 
 
 
References:
アプリの署名
APK 署名スキーム v2
Android App Bundle でアプリや機能をオンデマンド配信する

誤字脱字、意味不明で分からにゃイ、
などのご意見はこちらから mailフォーム

ブックマークしておくと便利です このエントリーをはてなブックマークに追加

 

アプリ開発が上達するお勧め

アプリ開発を始めたけどわからないところがあり、誰かに聞きたいけど周りにはそんな人はいない…あるいは、会社で働いていて日中そんなに時間をとれないなど、オンラインのプログラミングスクールがいいでしょう。

オンラインスクールは色々ありますが、以下の3つはAndroidが学習できる老舗スクールです。


TECH ACADEMY
Androidアプリコース


こういうものではアプリ作れないと言う意見もありますが、それは結局本人のやる気があるかないかです。やる気があっても独学では突破しにくいところは教えてもらうのが一番早い。


侍エンジニア塾
侍エンジニア塾 無料体験レッスン


とても簡単なことなのに本やネットの画像だけでは分かりにくいことはあります。実際に質問してピンポイントで教えてもらうと、なんだそんなこと、と言うのがけっこうあります。


CodeCamp
~約8,000名の受講生と80社以上の導入実績~
現役エンジニアのオンライン家庭教師CodeCamp




直接(ネットで)誰か分かる人に聞いた方が早く解決して、上達も早いと思います。


無料で転職まで
これはアプリ限定ではありませんが無料です
その代わり就職することを前提にしたスクールでエンジニアになって職を得たいのであれば手っ取り早いかもしれません

受講料無料:社会人転職コース




シェアする

  • このエントリーをはてなブックマークに追加

フォローする