自作の Android アプリ「天気壁紙」を Google Play に出しました。出したときは「これで完成」と思っていましたが、出して終わりではありませんでした。
Google Play には、アプリを新しい Android に合わせ続けるための決まりがあります。この記事では、出したあとに必要になった更新と、今どう向き合っているかをまとめます。
何が起きたか
Android アプリには targetSdk という番号があります。「このアプリは、どの Android のバージョンに合わせて作ったか」を表す番号です。Google Play では、この番号を決まった時期までに新しくする必要があります。これは一度きりではなく、新しい Android が出るたびに、毎年のようにやってきます。
「天気壁紙」では、最初は targetSdk 34 で作り、その日のうちに 35(Android 15)へ上げました。さらに2週間ほどあとに、36(Android 16)へ上げています。
もうひとつ、アプリ内課金の仕組みを使うための部品(Play Billing Library)も、古い版がずっと使えるわけではありません。こちらも新しい版へ上げる必要があり、7.1.1 から 8.0.0 に上げました。

なぜ毎年なのか(しくみ)
Android は、新しいバージョンが出るたびに、電池の使い方や画面の出し方、安全のための決まりが少しずつ変わります。古い番号のままだと、新しい決まりに合っていないアプリが残ってしまいます。そこで Google Play は、アプリにも新しい番号に合わせることを求めている、と私は受け取っています。
まちがえやすいのですが、targetSdk を上げても、古いスマホで使えなくなるわけではありません。「どの Android から入れられるか」は、minSdk という別の番号で決まります。「天気壁紙」の minSdk は 24(Android 7.0)のままです。上げているのは、あくまで「どの新しい Android に合わせたか」のほうです。
番号を上げるのは1行の書きかえですが、上げるとアプリの動きが変わることがあります。実際に 35 に上げたあと、テストしてくれた人から「上の見出しが、スマホの上の帯(時計や電池が出るところ)の裏にかくれている」と教えてもらいました。Android 15 に合わせると、アプリの画面が画面いっぱいに広がるようになるためです。
どう直したか(今どうしているか)
上の帯の件は、帯の高さのぶんだけ、画面の上下左右にすき間をあけるようにして直しました。
課金の部品を 8.0.0 に上げたときは、商品の情報を受け取るところの書き方が変わっていたので、そこを新しい形に合わせました。あわせて、ビルドをするクラウド(GitHub Actions)の側にも、Android 16 用の部品を入れるようにしました。
今は targetSdk 36、課金の部品は 8.0.0 です。でも、これで終わりではありません。来年もまた同じことがあると思って、毎年の決まりを追いかけています。
作る人へ
- アプリは出したあとも手入れが要る。毎年の更新の時間を、はじめから見ておく
targetSdkを上げたら、画面のずれや動きのちがいを実機で確かめる- 課金などの部品は、上げると書き方が変わることがある。お知らせ(変更点のまとめ)を読んでから上げる
- ビルドの環境(クラウドなど)にも、新しい Android 用の部品が要る
- 知らせてくれるテスターの声はとても助かる
まとめ
- Google Play では、新しい Android に合わせて
targetSdkを上げ続ける必要がある - 課金の部品(Play Billing Library)も、定期的に新しい版へ上げる必要がある
- 番号を上げると画面の出方が変わることがあるので、上げたあとの確認が大事
「天気壁紙」は、Google Play で「天気壁紙」と検索すると見つかります。作った話は天気の壁紙アプリを作った話に、ほかに作ったアプリは 作ったもの にまとめています。
ナノトイラボ 
