【個人開発】Androidアプリは出して終わりじゃない|毎年のtargetSdk更新と課金ライブラリ対応

Androidアプリは出して終わりじゃない|毎年のtargetSdk更新と課金ライブラリ対応

※このサイトの記事内では広告を掲載している場合があります。

自作の 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 に上げました。

アプリを出したあとも、targetSdkを34から35、36へ上げ、課金ライブラリを7から8へ上げてきた流れの図

なぜ毎年なのか(しくみ)

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 で「天気壁紙」と検索すると見つかります。作った話は天気の壁紙アプリを作った話に、ほかに作ったアプリは 作ったもの にまとめています。

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

CAPTCHA