OSバージョンの対応範囲


【iPhoneアプリはiOS 3つ分のメジャーバージョンが現実的】

ストアにアプリを公開する場合は、iPhoneもAndroidもまず最新のOSをサポートし、無理の無い範囲で古いOSもサポートすることが基本となります。
iPhoneアプリの場合、開発ツールXcodeに配布ターゲットの設定があり、ここにアプリがサポートする最も古いOSのバージョンを指定します。このコラムを書いている時点の最新のXCode 14.0では配布ターゲットにiOS11.0~16.0が選択できます。
iOS11は2017年9月リリースなのでiOS11以降だとサポート範囲が狭いように感じますが、少なくともApp Storeにアクセスするデバイスの99%以上はiOS11以上になっているようですのでiOS11以上がサポートできれば十分と考えることになります。

もちろん古い開発ツールを利用すれば古いOSに対応するアプリが作成できますが、最新OSへの対応は出来ません。App Storeにアプリを申請するには、最新OS(時期によっては1つ前のOSも可)に対応している必要があるので、この方法は現実的ではありません。

*2022年9月現在、Appleが提供する最新の開発ツールはXcode14(iOS16に対応)です。App Storeにアプリを申請するには、Xcode13(iOS15対応)以上での開発が必要となっています。

img30

【Androidは古いOSに対応可能。機能とサポート範囲のバランスを考えて選択】

Androidアプリの場合も開発ツールにminSdkVersionという設定があり、アプリがサポートする最も古いOSのバージョンを指定できます。Androidは新しいOSのアップデートが提供されない機種が多く、古いOSを使うユーザーが残りやすいのですが、古いOSで新しい機能が利用できるサポートライブラリが提供されており、少々の制約はありますが、アプリが古いOSに対応しやすい状況です。

以下はアプリがサポートするOSバージョンの代表的な例です。

  • v21(Android 5.0)以上(約98.8%)
  • v23(Android 6.0)以上(約96.2%)
  • v24(Android 7.0)以上(約92.7%)
  • v26(Android 8.0)以上(約88.2%)
  • v28(Android 9.0)以上(約77.3%)
  • v29(Android 10.0)以上(約62.8%)
  • v30(Android 11.0)以上(約40.5%)
  • v31(Android 12.0)以上(約13.5%)
※カッコ内のパーセント表示は、Google Playストアにアクセスするデバイスのサポート割合(本コラム執筆時点。開発ツールAndroid Studioの表示より転記)です。v21(Android 5.0)以上をサポートすると、Google Playストアにアクセスするほぼ99%のデバイスをサポートできることになり、v24(Version 7.0)以上では92.7%のデバイスをサポートできます。

対応バージョンは、アプリの目的に応じて機能とサポート割合のバランスを考えて決定します。最近のOSにすればするほど開発時に新機能が扱いやすく、その代わりにアプリを利用できないデバイスが増えていくのです。

私たちの提供しているスマホがポイントカードになるアプリ(Cardfeel)は、機能の拡充よりも多くの機種で動くことが求められると判断し、v21(Android 5.0)以上を選択しています。
最近リリースされるアプリではv24(Android 7.0)以上を選択することが増えてきているようです。

【企業内でアプリを配布する場合】

企業内(In house)のアプリを開発する場合は、App Storeの制約はないので、iPhoneアプリであっても対応OSを自由に決めることができます。
ただしサポート範囲を広げれば広げるほど、使える機能(API)は限定されるうえに、開発コスト(特にテストの作業規模)が増えるので、できる限り狭い範囲にするのが通例です。OSをアップグレードできない古いデバイスを利用する場合を除き、できるだけOSのバージョンを統一することでコストを節約できます。

PR

コンポーネントデザインでは、iPhone,iPad,Android用のアプリ開発を受託致します。お気軽にお問い合わせください。