はじめに
連休中はプライベートで開発しているスマホアプリの保守を行っています。というのも、Androidアプリでポリシー違反を指摘され、「修正しないとアップデートできなくなるよ!」とGoogleから連絡があったからです。
指摘されたポリシー違反の内容は以下の通りです。
「アプリは Android 14(API レベル 34)以降を対象とする必要があります。」
無事にアップデートできれば良いのですが、期限があるため、なんとか連休中に終わらせるつもりです。
さて、前置きはここまでにして、今回はAndroidアプリを開発する際によく耳にする「バージョン」と「APIレベル」について解説してみます。Android開発に慣れていないと、これらの違いや役割を理解しにくいかもしれません。本記事では、初心者向けにAndroidのバージョンとAPIレベルについて、わかりやすく説明します。
1. Androidのバージョンとは?
1.1 バージョンの意味と進化の過程
Androidのバージョンは、オペレーティングシステムの進化を示す指標で、新しい機能や改良が行われています。Androidでは、各バージョンにスイーツの名前が付けられ、アルファベット順でリリースされています。ここでは、歴代のバージョンとその別名を紹介します。 新しい機種が出るたびに聞く、Androidのバージョンは、多くの方に馴染みがあるかもしれません。
1.2 歴代のAndroidバージョンと別名
Android 1.5 (Cupcake)
リリース年: 2009年
初のスイーツ名が付けられたバージョンで、ウィジェットやバーチャルキーボードが導入されました。Android 1.6 (Donut)
リリース年: 2009年
様々な画面解像度に対応し、より多くのデバイスで利用可能になりました。Android 2.0/2.1 (Eclair)
リリース年: 2009年
ブラウザの改善やGoogleマップの統合、複数アカウントサポートが追加されました。Android 2.2 (Froyo)
リリース年: 2010年
パフォーマンス向上とFlashサポートが追加されました。Android 2.3 (Gingerbread)
リリース年: 2010年
ゲームやグラフィックの向上、NFCサポートが導入されました。Android 3.0 (Honeycomb)
リリース年: 2011年
タブレット専用のバージョンで、デュアルパネルUIや大画面向けの最適化が行われました。Android 4.0 (Ice Cream Sandwich)
リリース年: 2011年
タブレットとスマートフォンのUIが統合され、新しいデザインが採用されました。Android 4.1~4.3 (Jelly Bean)
リリース年: 2012年
より滑らかな操作体験が提供され、Google Nowが導入されました。Android 4.4 (KitKat)
リリース年: 2013年
メモリの最適化が行われ、ローエンドデバイスでも安定した動作が可能になりました。Android 5.0 (Lollipop)
リリース年: 2014年
マテリアルデザインが導入され、UIが刷新されました。また、通知機能の改善も行われました。Android 6.0 (Marshmallow)
リリース年: 2015年
権限管理の見直しや、バッテリー効率を向上させる「Doze」モードが導入されました。Android 7.0 (Nougat)
リリース年: 2016年
マルチウィンドウ対応や通知の改良が行われ、より直感的な操作が可能になりました。Android 8.0 (Oreo)
リリース年: 2017年
バッテリー管理の向上と、バックグラウンドでの動作制限が導入されました。Android 9.0 (Pie)
リリース年: 2018年
ジェスチャーナビゲーションが導入され、デジタルウェルビーイングが注目されました。Android 10
リリース年: 2019年
スイーツ名が廃止され、セキュリティとプライバシーの強化が進められました。Android 11
リリース年: 2020年
プライバシー機能のさらなる強化と通知管理の改善が特徴です。Android 12
リリース年: 2021年
UIが大幅に改良され、プライバシーダッシュボードが新しく導入されました。Android 13
リリース年: 2022年
カスタマイズ性が向上し、アプリごとに言語設定ができる機能が追加されました。Android 14
リリース年: 2023年
バッテリー消費の最適化や、セキュリティのさらなる強化が行われました。
このように、バージョンアップごとに新しい機能やセキュリティ強化が行われ、ユーザーエクスペリエンスが向上しています。
1.3 バージョンアップがもたらす利点
新しいバージョンでは、システムの安定性やユーザビリティが向上するだけでなく、新しい機能も追加されます。例えば、マルチウィンドウ機能やナイトモードなど、バージョンごとに新しい体験がユーザーに提供されます。Androidを使用されている方は、OSのアップデートを忘れないようにしましょう。
2. APIレベルとは?
2.1 APIレベルの基本的な仕組み
API(Application Programming Interface)レベルは、Androidのバージョンごとに提供されるフレームワークAPIのリビジョンを一意に識別する値です。APIレベルが高いほど、開発者は最新の機能を利用できます。
2.2 APIレベルと互換性の考え方
APIレベルとAndroidのバージョンは密接に関連しています。アプリを開発する際には、ターゲットとなるAPIレベルを選択する必要があります。新しいAPIレベルを選ぶことで、最新の機能を利用できます。冒頭で触れたポリシー違反の指摘は、古いAPIを使用しているため、新しいAPIを使用するよう求められているという内容です。
3. AndroidバージョンとAPIレベルの関係性
3.1 なぜAPIレベルが重要なのか
APIレベルは、アプリがどのバージョンのAndroidで動作するかを決定します。これにより、開発者はどの機能を使用するかを選び、特定のバージョンをターゲットにしたアプリを開発できます。
3.2 アプリ開発におけるバージョンとAPIレベルの選択
アプリを幅広く利用してもらうためには、ターゲットとするバージョンやAPIレベルの選択が重要です。できるだけ多くのデバイスに対応するためには、最低のAPIレベルと対象のAPIレベルを設定する際にバランスを取る必要があります。サポートするバージョンを広くすると保守(バージョンごとの動作を保証する対応と評価)が大変になるので、どこまでのバージョンをサポートするかという判断が必要になります。
まとめ
AndroidのバージョンとAPIレベルを理解することで、アプリ開発の幅が広がります。バージョンはユーザー向けの進化を示し、APIレベルは開発者向けの進化を示すものです。これらの関係性を理解して、効果的なアプリ開発を行いましょう。