[Android] API レベルと OSプラットフォーム

Android 10 が2019年秋にリリース。それにしてもAndroidはOSのバージョンがたくさんあります。それに応じてAPIが新しく作成されたり、推奨になるAPIも出てきます。
android share 02 - [Android]  API レベルと OSプラットフォーム
アプリを開発する側からすると、APIレベルでの細かな調整や切り分けが必要になってしまいますね~。



Platform と API Level

 
Google:OS別のシェア
これによるとまだまだ古い機種もあるのですね。対応するのが大変です、ただ世界のシェアなので日本はどうかはまた別の話かもしれません。
 

API Level Platform Release Code Name
1 Android 1.0 2008/9 BASE
2 Android 1.1 2009/2 BASE_1_1
3 Android 1.5 2009/4 CUPCAKE
4 Android 1.6 2009/9 DONUT
5 Android 2.0 2009/10 ECLAIR
6 Android 2.0.1 2009/12 ECLAIR_0_1
7 Android 2.1.x 2010/1 ECLAIR_MR1
8 Android 2.2.x 2010/6~2011/11 FROYO
9 Android 2.3~2.3.2 2010/11~2011/1 GINGERBREAD
10 Android 2.3.3~2.3.7 2011/2~2011/9 GINGERBREAD_MR1
11 Android 3.0 2011/2 HONEYCOMB
12 Android 3.1 2011/5 HONEYCOMB_MR1
13 Android 3.2.x 2011/7 HONEYCOMB_MR2
14 Android 4.0~4.0.2 2011/10 ICE_CREAM_SANDWICH
15 Android 4.0.3 2011/12 ICE_CREAM_SANDWICH_MR1
16 Android 4.1.x 2012/7 JELLY_BEAN
17 Android 4.2.x 2012/12 JELLY_BEAN_MR1
18 Android 4.3.x 2013/7 JELLY_BEAN_MR2
19 Android 4.4.x 2013/9~2014/6 KITKAT
20 Android 4.4W.x 2014/6 [Android Wear]
21 Android 5.0.x 2014/10 Lollipop
22 Android 5.1.x 2015/3 Lollipop_MR1
23 Android 6.0.x 2015/10 Marshmallow
24 Android 7.0 2016/8 Nougat
25 Android 7.1.x 2016/10~2017/4 Nougat
26 Android 8.0 2017/8 Oreo
27 Android 8.1 2017/12 Oreo and Go Edition
28 Android 9.0 2018/8 Pie
29 Android 10 2019/9 廃止*

*Android 10 からお菓子の名前を愛称にしていたのを廃止。バージョン番号だけになった
 


2019/5/7 までの7日間でのシェア

Pie 10.4%
Oreo 28.3%
Nougat 19.2%
Marshmallow 16.9%
Lollipop 14.5%
Others 10.7%

1週間でのサンプリングです。

android share 02 - [Android]  API レベルと OSプラットフォーム


2018/09/12でのシェア

Pie 0%
Oreo 14.6%
Nougat 30.8%
Marshmallow 22.7%
Lollipop 19.2%
Others 12.7%

Pieは出始めなので未だ0%です。
バージョンごとの切り分けや機能テストを考えるとなるべく対応レベルの数は少なめにしたいところですが、Lollipop以上で87.3%です。
Marshmallow以上では68.1%でほぼ2/3
実際にリリースする時期にはこの割合も変わるでしょうけれど


 
新しいOSの検証には
GoogleのPixelシリーズが必須ですよ(課長よろしく!)
 

android device 00 100x100 - [Android]  API レベルと OSプラットフォーム
Androidは端末によってはOSのアップデートが無い事が多いため、最新機能の確認はどうしてもGoogleのPixelを入手する必要があ...

 

バージョン切り分け

 
非推奨APIがたくさんあるので、APIのレベルに応じて処理を切り分けないといけないのですが、

例えばLillipop以降とそれ以外で切り分ける場合

こんな感じでいきましょうか。
 
 
References:
Build.VERSION_CODES | Android Developers
ダッシュボード | Android Developers
Android OS Version History

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

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

 

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

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

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


TECH ACADEMY
Androidアプリコース


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


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


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


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




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


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




シェアする

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

フォローする