Android

Question: ハンドルシステムを開発したのは誰


Android（アンドロイド）は、Googleが開発したモバイルオペレーティングシステムである[2]。Linuxカーネルやオープンソースソフトウェアがベースで、主にスマートフォンやタブレットなどのタッチスクリーンモバイルデバイス向けにデザインされている。テレビ用にはAndroid TV、自動車用にはAndroid Auto、ウェアラブルデバイス用にはWear OSがある。世界で最も人気のあるモバイルオペレーティングシステムであり、20億人を超える月間アクティブユーザーがいる[3]。
概要
2003年にアンディ・ルービン、リッチ ・マイナー、ニック・シアーズ、クリス・ホワイトがアメリカカリフォルニア州パロアルトに携帯電話向けソフトウェアプラットフォームを開発するAndroid社を設立した。2005年にGoogleがAndroid社を買収[4]し、一時はGoogleが「gPhone」という独自の携帯電話端末の開発を進めているという憶測が流れた[5]。
2007年11月5日 携帯電話用ソフトウェアのプラットフォームであるAndroidを、Google[6]、米クアルコム、独通信キャリアのT-モバイル (T-Mobile International) などが中心となり設立した規格団体 「Open Handset Alliance」（オープン・ハンドセット・アライアンス、OHA）が発表した。
無償で誰にでも提供されるオープンソースであり[7]、Apache License 2.0で配布される。2008年10月からは対応する携帯電話が多数販売されている。
Androidのロゴには緑色のロボットのキャラクターが使われており、日本では「ドロイド君」の愛称で呼ばれている。
競合するモバイル向けプラットフォームは、マイクロソフトのWindows Phone、アクセンチュアのSymbian OS、クアルコムのBrew MP、アップルのiOS、ブラックベリーのBlackBerry、Linux FoundationのTizenなどがある。
Googleはスマートフォン・タブレット・腕時計以外にもゲーム機・冷蔵庫といった領域にもAndroidを搭載させる考えである[8]。
特徴

この節では、Android Developersから発表されている標準のAndroid（AOSP）について記述する。サードパーティーが独自に追加（カスタマイズ）した機能は含まない。
ユーザインタフェース
Androidのユーザインタフェース (UI) はメーカーごとに異なり、それぞれが独自のUIを開発している。カスタマイズが施されていない標準のAndroidは通称AOSP版と言われ、Android Open Source Projectのソースコードから直接ビルドしたものを指す。また、メーカーやサードパーティーが開発したものはカスタムROMと言われている。
Androidの基本操作はタッチインタフェースとなっており、指を使って直感的な操作ができるようになっている。表示されたボタン類を押すタップ、長押しタップ（つまむ）、画面端からタップスライドしてメニュー類を表示するスワイプ、マルチタッチによるピンチや回転などができるようになっている[9]。画面をタップした際に、ボタンを押したという感覚を起こさせるために、本体をバイブで振動させる機能を持ち合わせる。ジャイロスコープやGPS、加速度計などのハードウェアをサポートしており[10]、アプリケーション側からそれらにアクセスして活用する事もある。ジャイロスコープは端末を縦向きから横向きに変更する際に使われる事が多い。ゲームの例ではレースゲームで車をハンドル操作する際、端末を傾けてハンドル操作に当てはめるものがある[11]。
ホームスクリーン上には、パソコンのデスクトップ画面のようにアプリケーションのアイコンが並び、アプリをインストールするとホームスクリーン上に自動的に配置される。また長押しタップでアイコンを移動したり、フォルダを作成して格納する機能を持つ。これに加えてウィジェットを配置できるようになっている。ウィジェットは、天気予報やニュースなどのライブ情報などがあり、ホームスクリーンから直接見ることが出来る。ホームスクリーンは画面外にも複数用意されており、画面を左右にスワイプすることで複数のホームスクリーン間を移動出来る[12]。
画面上部にはステータスバーが配置されている[13]。ステータスバーは、新着メールやSMSを受信したりデバイスを接続した時に、ユーザーに作業を中断させることなく知らせるシステムとして使われる[14]。また、多くのAndroid端末には、通信の切り替え、機内モード、システム設定など、頻繁に使われる機能も、この通知バーに格納されているものが多くある。日本国内では通称として通知バーと呼ばれている。
画面下部には「戻る」、「ホーム」、「アプリケーションリスト」の操作を実行できるナビゲーションバーが、Android 3.x、及び4.0以降から配置されている[15]。これ以前のバージョンでは、主にハードウェアキー(いわゆる押しボタン式)が主流であった。
文字の入力
Androidには文字入力のためのIMEを搭載しており、テキストボックスを開くと画面上に仮想キーボードが表示される。この仮想キーボードを、タップやスワイプ操作する事によって文字を入力できるようになっている。サードパーティ製のIMEをインストールする事も可能になっている。IMEとハードウェアが対応していれば、BluetoothやUSB接続の外付けキーボードを接続して入力することができる。また発声によって文字入力を行う音声入力システムも備える。
なお2018年現在、Android OSには標準で日本語入力用のIMEが搭載されていない。その為、日本語入力を行うには、Google 日本語入力やATOKなどのサードパーティー製IMEをインストールする必要がある。国内販売されている端末は、最初から日本語入力できるようにiWnn、POBox Touch、S-Shoin、ATOKなどが、メーカーによって搭載されている。
アプリケーション
Googleの認可を受けた端末には、アプリケーションマーケットとしてGoogle Playがインストールされている。[16]多くの端末では、このGoogle Playからアプリコンテンツをダウンロードして使えるようになっている。2013年7月時点のGoogle Play内では、100万本を超えるアプリケーションが提供されている。[17]
GoogleはGoogle Playを経由しないアプリ配布も認めており、APKファイルから直接インストールできるようになっており[18]、それらのアプリは野良アプリと呼ばれる。ただし一見普通のアプリに見える悪質なアプリ（マルウェア）も存在するため、公式マーケット以外からのダウンロードには細心の注意が必要である。[19]
構成
Androidは、カーネルからミドルウェア、ユーザインタフェース、ウェブブラウザ、電話帳などの標準的なアプリケーション・ソフトウェア群までを1つのパッケージにして提供されている。
カーネルにはLinuxの関連技術が使用されているが、その他の部分は様々な技術が用いられており、例えば標準Cライブラリ (libc) のBionicはNetBSDのlibcとLinuxのlibcを組み合わせたものをベースにしている。



プログラミング言語
カーネルとライブラリー、ランタイムはほとんどがC言語またはC++で記述されている。アプリケーションとアプリケーション・フレームワークは、Google独自に構築した仮想マシンであるDalvik仮想マシン上の「Java Platform, Standard Edition (Java SE) のサブセット＋Android拡張」環境で記述する[21]。
対応CPU
Googleが公式サポートしているCPUはARM（ARMv5以降）、MIPS、x86である。ARM以外の環境はAndroid 2.3から対応した。端末シェアの多くはARMv7とARMv8が占めているが、日本においては2014年3月に大手家電量販店のビックカメラが自社ブランド製品としてIntel Atom搭載のタブレットを発売[22]するなど、x86による製品も徐々に広がっている。
仮想マシン
Android 4.4以前のバージョンで動作するアプリケーションは、基本的にはDalvik仮想マシン (VM) 上で動作する。Android OSは、プレ・インストール・アプリと、後からインストールするアプリを、公平に扱うのが特徴である。Apache HarmonyからSwingやAWTなどの一部のAPIを除去し、UIなどのAPIを追加したライブラリである。 Java CDCのAPIは、全てではないが、概ね含まれている。Sun Javaの互換性テストを通過していない。
Googleから提供されているSDKでは、Javaプラットフォームによるプログラム環境と、C/C++による開発がサポートされている。Java以外にも、Javaプラットフォーム向けの複数の言語（Scala、）で書かれたプログラムがDalvik上で動作する。また、.NET Framework互換環境の1つであるMonoもDalvikに対応する計画がある[23]。
Android 4.4 (KitKat) からは、デベロッパー向けにART仮想マシンが実装された。ARTはAndroid Runtimeの略で、Dalvikよりもアプリケーションの動作効率などを向上させることを目的に開発された[24]。Dalvikの場合、多様なハードウェアに対応できるよう、アプリを中間コードの状態で保管しておき、実行直前にネイティブコードに変換して動作させるJITコンパイル方式が採用されている。一方でART仮想マシンは、予め最初からネイティブコードに変換しておくため、実行速度や動作速度が向上する[25]。
なお、Android 4.4では依然としてDalvikが標準となっており、ARTを用いるためには開発者向けオプションで設定が必要である。ただし、アプリケーションによってはART上では正常動作しないものもあり、Dalvikとの完全互換は保障されていない[26]。
Android 5.0からは、ART仮想マシンが標準となった。5.0に搭載されたバッテリー改善システムと、ARTの効率性の良さという組み合わせによって、バッテリー持続時間がAndroid 4.4と比較して1.37倍と大幅に伸びた[27]。
ブートローダー
ブートローダー (bootloader) とは、デバイスの電源を入れた際にフラッシュメモリ上にインストールされたLinuxカーネルを読み込み、そこからAndroidを起動させるシステムである。パソコンで例えると、BIOSという部分に相当する。ブートローダーのインタフェースは、一部の端末でアクセス可能である。多くの場合は、電源ボタンと音量ダウンボタンを同時押ししながら電源を入れて起動させる事ができる。起動後に表示されるインタフェースは、fastbootモードとも呼ばれる[28]。ほとんどの携帯端末ではブートローダーにUBootが使用される。
開発環境
アプリケーション開発用にはAndroid SDK (Software Development Kit) が、ランタイムとライブラリの開発用にはAndroid NDK (Native Development Kit) が無償提供されている[29]。Android SDKによって、Android携帯電話機とホストPCとをUSBで接続して、アプリケーションプログラムを携帯電話機上で実行しながらPC上でデバッグすることができる。Googleが有償で提供するSIMロックフリーの開発専用携帯電話機や他社の専用の携帯電話機エミュレータでないと、低レベルのランタイムとライブラリーを書き換えることは出来ない[21]。対応しているオペレーティングシステムはLinux（Ubuntu 8.04以降など）、Mac OS X v10.5.8以降 (Intel Mac)、Windows XP以降である。開発環境には、Android Studioが推奨されている。Visual Studio、IntelliJ IDEAなど他の統合開発環境も対応している。
Googleは、2013年5月15日に開催されたGoogle I/OでAndroid Studioと称する新たな統合開発環境を開発中であることを表明した[30]。これはIntelliJ IDEAをベースにしたオープンソースによるAndroid専用の開発環境であり、ビルドツールとして従来のApache AntではなくGradleを採用している。また、レイアウトのデザインもよりグラフィカルで端末実機のイメージに近くなるとされる。2014年12月8日に正式版1.0がリリースされた[31]。
Android SDKでは、Android Virtual Device (AVD) と呼ばれるPC上で動作する仮想デバイスを用いることができる。対応CPUと同様にARM、MIPS、x86の3種類のアーキテクチャをエミュレーションするソフトウェアがSDKに同梱されており、これにロードされるシステムイメージもAndroidバージョンごとにそれぞれ提供されている。ユーザーがこれらを選択をして、任意のAndroidバージョンとCPUエミュレーターの組み合わせによるAVDを作成する。ただし、一般的なエミュレーターと同様に他のコンピューターシステムをエミュレーションするために動作が非常に重く、快適なデバッグを行うことは難しい。これをカバーするため、仮想化支援機能をサポートしているx86アーキテクチャのCPUが搭載されたホストマシン上では、x86システムイメージによるAVDを高速化することができる。WindowsおよびMac OSにおいては、インテルが提供するIntel Hardware Accelerated Execution Manager (HAXM) によってIntel VTによるサポートを有効にすることができる。また、Linux版のSDKにおいては、x86エミュレーター自体がKVM上で動作させることが可能となっており、Intel VTまたはAMD-Vによるサポートによって高速化することができる。
Google Mobile Service
ほとんどのAndroid端末には、プロプライエタリ・ソフトウェアのGoogle Mobile Service (GMS) アプリがプリインストールされている。Google Play 、マップ、ギャラリー、カレンダー、Gmail、トークなどが含まれる。GMSアプリの搭載は互換性テストのCompatibility Test Suite (CTS) を通過し、Googleにライセンスを与えられた端末のみ認められている。オープンソースのAndroidから派生して、これらのアプリが入っていない場合は、CyanogenMod Gapps[32] などからroot権限で /system フォルダにコピーしてインストール可能。
エミュレーション・モデル
基本ハードウエアを「goldfish」と定義しており、SDKのQEMUエミュレータはそれを踏襲している。サポートしているスペックは下記の通り。ただし、2007年10月当時のスペックである。
goldfishモデル
メインメモリ：96MB
VRAM:8MB
画面サイズ：480×320画素 (HVGA)、または320×240画素 (QVGA)、ともに縦長または横長配置[6]
バージョン

歴代のコードネームのうち、1.5からは頭文字がバージョンの発表順にCからのアルファベット順で始まる菓子の名前が付けられており、それぞれにBugdroidがコードネームの菓子に扮している。

1.0
1.1
Cupcake (1.5)
Donut (1.6)
Eclair (2.0, 2.1）

Froyo (2.2)
Gingerbread (2.3)
Honeycomb (3.0, 3.1, 3.2)
Ice Cream Sandwich (4.0)
Jelly Bean (4.1, 4.2, 4.3)

KitKat (4.4)
Lollipop (5.0, 5.1)
Marshmallow (6.0)
Nougat (7.0, 7.1)
Oreo (8.0, 8.1)
Pie (9.0)

シェア
スマートフォン
ガートナーの調査によると、世界でのスマートフォンの販売台数のシェアの推移は以下の通り[33][34][35][36][37][38][39][40][41][42][43][44][45][46][47][48][49]。

日本国内でのスマートフォンの利用者数（契約者数）の推移は以下の通り[50][51][52][53][54][55][56]。

タブレット
世界のタブレット出荷台数（電子書籍端末を除く）[57][58][59][60][61][62][63][64][65][66]

日本国内のタブレット出荷台数（電子書籍端末を除く）
[67][68][69][70][71][72][73][74]

バージョン


Google Play Storeへのアクセス統計によるバージョンごとの世界シェア[75]。

ライセンス
Androidのソースコードは、アプリケーション・フレームワークから標準ライブラリ、ランタイム、カーネルまでのすべてが公開され、改変も自由である。基本的にAndroidのソースコードのライセンスは、Apache License 2.0に準じるため、Androidを採用した企業・個人が改変部や付加部分をGPLのように公開する必要はない。ただし、WebKitのライセンスはLGPLであり、カーネルとそのライブラリなどのLinuxに基づく部分のライセンスはGPLであるため、公開が求められる[21]。
Gmail、Googleマップ、Google検索、Google Playなどの一部のGoogle製アプリケーションは、Androidと密に連携しているがプロプライエタリなライセンスで提供されている[76]。これらのGoogle製アプリケーションはGoogle Mobile Service認証をGoogleから受けた端末に対してのみ供給され、それらの端末でのみ動作が認められる。したがってカスタマイズしたAndroidに、これらのアプリケーションを載せるためには、カスタマイズを施したプロジェクトが個別にGoogleの許諾を得る必要がある。なお、アプリケーションをGoogle提供のファームウェアからバックアップし、権利を侵害していないカスタム版に再インストールする（カスタム版にはアプリケーションをバンドルしない）手法が説明される場合もあるが、Google Mobile Service認証を経ておらず、ライセンス違反の行為となる。
タブレット向けのバージョンであるAndroid 3.xはスマートフォンへの対応が不完全であるということを理由としてソースコードの公開が見送られていた[77]
が、4.0.1から再度公開に戻った
[78]。ただし、3.xのソースコードはGitの履歴の中に存在するだけで、Gitのタグとしては割り振られていない[79]。

歴史

アンディ・ルービンが設立したプラットフォームベンダーである米Android社を、2005年にGoogleが買収[80]したことから一時はGoogleが「gPhone」と呼ばれる独自の携帯電話端末の開発を進めているという憶測が流れた[81]。2007年11月に「Open Handset Alliance」（オープン・ハンドセット・アライアンス、以下OHAと表記）を通じて新規プラットフォームの概要のみが発表される結果となった。
2007年11月5日、携帯電話用ソフトウェアのプラットフォームであるAndroidを、米検索最大手Google、米クアルコム、独通信キャリアのT-モバイル（T-Mobile International）などが中心となり設立した規格団体 OHAが発表した。
2008年
9月23日 - 米T-Mobile USA社は世界初の商用Android搭載端末としてT-Mobile G1を発表した。OHAはソフトウエア開発キット（SDK）の正式版「Android 1.0 SDK, Release 1」を発表した。OHAはAndroidの全ての動作環境を、2008年中にオープンソースライセンスの1つであるApacheライセンス Ver.2.0の下で公開する方針だとしている[82]。OHAには上記の企業以外にも、日本のNTTドコモ、KDDI、テレフォニカなどの電気通信事業者や、米モトローラ、韓国サムスン電子、LGエレクトロニクスなどの携帯端末メーカー、米インテル、ブロードコム、NVIDIA、テキサス・インスツルメンツ、マーベルなどの半導体メーカーなど、大手企業が合わせて34社も参加している[83]。
10月22日 - 世界初のAndroid搭載スマートフォン、「T-Mobile G1」がT-Mobile USAから全米向けに発売された。同時に、Googleはアプリケーションを販売するためのマーケット「Android Market」を開設した[84]。
12月9日 - 新たにソフトバンクモバイル、ボーダフォン、東芝、ソニー・エリクソン・モバイルコミュニケーションズ、華為技術、エリクソン、オムロン、ASUS、ガーミン、ARMなどの14社がOHAに加わった事が発表された[85]。
2009年
6月24日 - ソフトフロント、Android上で双方向VoIP通話に成功を発表[86]。
9月 「Android 1.6 SDK」の提供を開始[87]。
10月23日 - HT-03AでAndroid 1.6が提供開始[88]。
11月8日 - 米国のベライゾン・ワイヤレスよりモトローラ製Android 2.0搭載のスマートフォン、「Motorola Droid」がアメリカで販売される[89]。
2010年
1月5日 - Googleより、世界初のAndroid 2.1を搭載したNexus Oneが発売された[90]。
12月16日 - Googleより、世界初のAndroid 2.3を搭載したNexus Sが米国で発売された。
2011年
2月24日 - モトローラ・モビリティより、世界初のAndroid 3.0を搭載したMotorola Xoomが米国で発売された。
11月17日 - Googleより、世界初のAndroid 4.0を搭載したGalaxy Nexusのグローバルモデル（GT-i9250）が欧州で発売された。
2012年
7月10日 - Android 4.1が公開された。最初にGalaxy Nexus、Motorola Xoom、Nexus Sのグローバルモデル向けにアップデートを開始した[91]。
11月13日 - Android 4.2が公開された。Nexus 4とNexus 10に標準搭載されて発売された[92]。
2013年
7月24日 - Android 4.3が公開された。Nexus 4、Nexus 7、Nexus 10向けのアップデートを開始[93]。
11月1日 - Googleより、世界初のAndroid 4.4を搭載したNexus 5が発売された。
2014年
3月18日 - スマートウォッチ向けにカスタマイズされたAndroid Wearをリリース。
6月25日 - カーナビゲーションシステムのAndroid Autoを発表。
6月26日 - Android Lのデベロッパープレビュー版を、Nexus 5とNexus 7向けに提供開始[94]。
9月15日 - Googleより、新興国市場向け低価格帯スマートフォンのAndroid Oneが発表された[95]。
10月15日 - Android Lの正式版となるAndroid 5.0が発表された[96]。
11月3日 - Android 5.0の正式版を公開[97]。
2015年
3月10日 - Android 5.1の正式版を公開。
10月6日 - Android 6.0の正式版を公開。
2016年
3月10日 - Android 7.0の公開ベータ版をリリース。当初コードネームがなく、Android Nとして発表された[98]。
8月23日 - Android 7.0の正式版を公開[99]。
10月4日 - Android 7.1の正式版を公開。
12月5日 - Android 7.1.1の正式版を公開。
2017年
4月4日 - Android 7.1.2の正式版を公開。
8月21日 - Android 8.0の正式版を公開。
11月27日 - Android 8.1の正式版を公開。
2018年
3月7日 - Android 9.0の正式版を公開。
世界での発売端末

セキュリティ

Androidのアプリケーションは、スーパーユーザー権限（root）を要求する一部のアプリを除き、システムの重要領域やユーザー情報にアクセスできないようサンドボックスで動作する[100]。
権限に関してはユーザーに視覚的にわかるように、アプリをインストールする際、必要な権限のリストを表示する機能がある。例えば「Google マップ」の場合は、位置情報の読み取り（GPSへのアクセス）があり、「カメラ」だと撮影、マイクによる録音などの権限がリストに表示される。この機能によって、アプリケーションに無関係な怪しい権限を要求された際には、ユーザーが確認できる[101][102]。

Android 4.3ではアプリ毎に権限を設定できる機能が実験的に追加されたが、アプリケーションの互換性を損なう恐れがあるという理由で4.4では無効になった[103]。
端末をスリープ解除する際には、ロック画面にPINコードやパターンロックを割り当てる事もできる。これに加えてAndroid 5.0以降では、自宅にいる時、スマートウォッチが接続されている時などの条件に応じて自動でロック解除できるスマートロック機能もある。
盗難などで不正にファクトリーリセットされた端末は、Android Device Protection（アンドロイド デバイスプロテクション）という保護機能が働く。デバイスプロテクションが作動すると、直前オーナーのGoogleアカウントにログインしなければ全ての機能が使えないようロックされる。
その他に、端末の位置を逆探知したりリモートロックできるAndroid デバイス マネージャー（ADM、スマートフォンを探す）も提供されており、盗難や置き忘れの対応策のひとつとされている。
日本でのセキュリティ
トレンドマイクロ社によると、2012年（平成24年）1月から3月の間に、Androidの不正アプリが約5,000種発見されたとしている。また、同社では、2012年（平成24年）4月に人気アプリである写真共有サービス「Instagram」や、アクションパズルゲーム「Angry Birds Space」などの偽アプリ配布サイトが存在し、特定のWebサイトにアクセスし、モバイル端末に他のファイルをダウンロードするなど、不正な動作を行う偽アプリがダウンロード出来るようになっていたことを確認している。「Google Play（旧Android Market）」などの公式サイトにおいて偽アプリが確認されるケースもある。
このような課題に早急に対応していくために、日本は、2011年（平成23年）10月に「スマートフォン・クラウドセキュリティ研究会」を設置し、スマートフォンを狙うマルウェア等に対する事業者等における対策の在り方や、利用者への情報セキュリティ対策の啓発の必要性について検討を進めてきた。同研究会では、同年12月の中間報告で、スマートフォン利用者が最低限取るべき情報セキュリティ対策として、「スマートフォン情報セキュリティ3か条」33を提唱し、2012年（平成24年）6月に最終報告を取りまとめた。また、2011年（平成23年）12月に「利用者視点を踏まえたICTサービスに係る諸問題に関する研究会」において「スマートフォンを経由した利用者情報の取扱いに関するWG」が開催され、スマートフォンにおける利用者情報が安心・安全な形で活用され、利便性の高いサービス提供につながるよう、諸外国の動向を含む現状と課題を把握し、利用者情報の取扱いに関して必要な対応等の検討が進められている。2012年（平成24年）4月には、スマートフォンを巡るサービス構造、利用者情報の取扱いに関する現状、利用者情報の管理等の在り方及び利用者に対する周知の在り方等の今後の論点を取りまとめた中間取りまとめ及び利用者自身が注意すべき事項を整理した「スマートフォンプライバシーガイド」34が公表された。
（参照：平成24年総務省「情報通信白書」）
組み込み用Android
"Open Embedded Software Foundation"(OESF) がAndroidを基に、機能を追加した組み込み用プラットフォームを開発中である。OESFのWebには2005年からのタイムスタンプがある。日本のOESFはWebによると2009年2月12日に設立された。2011年3月現在のバージョンは、Android 2.2を基にしEM3(OESF Embedded Master 3)と呼ばれる。2011年3月にオープンソースとして一般向けに公開された[104]。
IP電話、デジタルテレビ、マルチメディア、DLNA、Bluetooth、リモートコントロール、ポインティング・デバイス、ネットワーク管理、ユーザインタフェース、SDKなどの機能拡張を行ってアプリケーション・フレームワークより上位のAPIから使用する。EM1の機能拡張は全てではないと推測されるが、Linuxカーネル部分と同じ深さでハードウェア上に直接載る低レベルで実装される。EM2は、Android 2.0を元に開発され、2010年10月に公開された。Androidそのものが軽量化を意図して設計されているが、OESF版ではさらに基本コンポーネントだけに絞り、必要な機能を選んで追加できる[105]。
Android Go Edition
Android Go editionは、Googleが開発者カンファレンス「Google I/O 2017」において「Android Go」プロジェクトとして発表された。メモリーやストレージが少ないローエンド端末でもAndroidが効率的に動作するように設計されており、Android 8.1 Oreoで動作するメモリー1GB以下のデバイス向けに最適化されている。
イースターエッグ
Android 2.3 Gingerbread以降からは、ジョークの画像やアニメーションを表示する機能が隠されている。いわゆるイースターエッグと呼ばれるものである。この機能にアクセスするには、端末の設定情報から端末情報を開き、一覧にあるAndroidのバージョン</b>を3回連続でタップすると表示される。なおAndroidのバージョンによって、表示される内容が異なる。
2.3（ジンジャーブレッド） - ゾンビの群れ中にAndroidのロボットが表示される。このイラストは、多くのゾンビアートを手がけるジャック・ラーソンによって描かれた。
3.x（ハニカム） - Androidのロボットを、昆虫の蜂にデフォルメしたイラスト。
4.0（アイスクリームサンドイッチ） - 黒いビスケットに包まれたアイスクリーム状のロボットイラスト。ロングタップすると、8ビットデザインのロボットが無数に飛び交うアニメーションに移動する。
4.1-4.3（ゼリービーンズ） - ゼリービーンズの形をする笑ったAndroidロボットが表示される。ロングタップすると、それが無数に飛び交うアニメーションに切り替わる。ロボットはタップして移動したり弾き飛ばす事ができる。
4.4（キットカット） - アルファベットのK(殆どの端末ではビルド番号の頭文字か数字)が表示され、左右をタップすると回転する。数回タップする事で、キットカットのロゴデザインを象ったAndroidロゴが表示される。ここからロングタップすると、4.4以前で全ての歴代バージョンのアイコンがタイル型のインタフェースで表示される<b data-parsoid='{"dsr":[42179,42192,3,3]}'>デザートケース</b>の画面に移る。
5.x（ロリポップ） - ペロペロキャンディが表示され、キャンディの部分をタップすると色が変化する。そこから何回かタップして更にロングタップすると、に似たゲームで遊べる。JRummy Appsによって難易度調整機能が付いた『Lollipop Land』のゲームアプリが公開されている。
L（デベロッパービルド） - Android Lの開発者プレビュー版は、ランダムな色と大きさをした四角形が表示され、下部にビルド番号が表示される。ロングタップすると、4.4と同じくタイル型のインタフェースが表示される。
6.0（マシュマロ） - マシュマロが表示され、ロリポップとは違いマシュマロの部分をタップしても色は変化しない。ロングタップすると、に似たゲームで遊べるのは同一だが一つの端末で最大6人までのマルチプレイに対応したりタップ位置が表示されるようにもなった。
7.x（ヌガー） - アルファベットのNが表示され、タップしても変化しない。ロングタップすると、猫のアイコンが表示され、クイック設定の編集を押すと猫のアイコンで「????」のメニューが追加される。猫のアイコンをクイック設定に追加すると皿のアイコンに変化し、皿のアイコンをタップするとねこあつめに似たゲームで遊べる。
システム領域のカスタマイズ
root化

Androidではセキュリティ等の理由からユーザーやアプリケーションがある階層以上にしかアクセスできないように制限がなされている。その制限を解除し最低階層にアクセスできるようにすることを、root化（rooting）、root権を取る</i>という。これにより、より高度な動作をするソフトウェアが実行可能になるが、ほとんどの場合販売元との規約に反するため、サポートを受けられないなどのデメリットが生じる。iOSでのjailbreakに近い。
ただ、AndroidセキュリティチームのNick Kralevichによれば、Googleはroot化を認めている。root化はユーザーの権利の一つであり、一方でユーザーの責任でそれに伴う不利益を受けることは仕方ないという見解を示している。またroot化によってアプリケーションや各種コンテンツの開発者、キャリア会社の権利は侵害されないとしている[106]。
ブートローダーのアンロック
Androidのアップデートは、このブートローダーを経由してアップデートされるが、大半の端末ではブートローダーがロックされている。ブートローダーがロックされていると、メーカーの電子署名が入ったアップデートしか受け付けないようになっている[107]。これに対して、ユーザーが自由にカスタムROMをインストール出来るように、一部の端末ではブートローダーをアンロックする方法がGoogleによって公開されている[108]。

これらは改造行為となり保証外になるのが通常だが、中にはこの行為前提で初めからブートローダーがアンロックされた状態で出荷される端末もある[109]。
fastbootモード
fastbootモード（ファーストブートモード）とは、PC側のコマンド操作によってシステム領域の書き換えやパーティション操作を行うための機能である。fastbootのコマンド機能は前述に加え、ブート、リブート、アプリのアンインストール、ファイルの転送、システムのバックアップ、ブートローダのアンロックなど様々なコマンドに対応する[110]。
プライバシー
2011年04月、ウォール・ストリート・ジャーナル（Web版）が、Androidは個人情報（Android利用者の氏名や場所、付近のWi-Fiネットワークの信号強度や位置情報）を取得・蓄積し、Googleに送信していると報じた。セキュリティ専門家が台湾HTC製のAndroidスマートフォンを調べた際に、これらの情報を少なくとも1時間に数回、Googleに送信していたことが確認されたという[111]。
この報道に対し、GoogleはAndroid搭載端末から位置情報を収集していることは認めたが、すべてあらかじめユーザーの同意を得た上で行っており、また収集したデータは匿名化された形でGoogleのサーバーに送られていることから、プライバシー上問題はないと主張している[112]。
2011年05月、韓国の警察は、Android利用者の位置情報を無断収集した疑いで、米Google韓国法人のGoogleコリアを家宅捜索し、位置情報の収集に関するデータを押収した。警察関係者は「携帯電話向け広告を扱うGoogle子会社のアドモブが、利用者の同意なくスマートフォン向けアプリケーションを通じて個人の位置情報を収集した疑いがある。押収物を分析し、個人情報の収集量や収集方法を把握する」と話している[113]。
脚注


関連項目


組み込みLinux
関連製品
Android TV
Android Auto - Android端末と車両を接続して使用するカーナビゲーションシステム
Android Wear - スマートウォッチ用のOS
Chrome OS - ネットブックやデスクトップパソコン用のOS
派生OS
ColorOS
CyanogenMod
AOKP
Fire OS
MIUI
LeWa OS
OmniROM
Paranoid Android
Replicant
Indus OS
LineageOS
競合OS
iOS
Windows Phone
BlackBerry OS
Tizen, MeeGo
Firefox OS
Open webOS
開発環境
Android Studio
外部リンク



(in English)


(in English)
(in English)
(in English)
(in Japanese)