Android 開発のセットアップ

Android は、各種のフォーム ファクタを持つさまざまなデバイス用に作成されたオープンソースのソフトウェア スタックです。Android の主な目的は、携帯通信会社、OEM、デベロッパーが革新的なアイデアを現実化して、ユーザーのモバイル エクスペリエンスを向上させる実用的な優れたプロダクトを生み出すために利用できるオープンなソフトウェア プラットフォームを作成することです。

Android は、ある業界プレーヤーが他のプレーヤーのイノベーションを制限または制御するような主要な障害ポイントが生じないように設計されています。その結果、Android はソースコードがオープンでカスタマイズと移植を自由に行える、高品質の完全なコンシューマー プロダクトとなっています。

Android フレームワークの詳細
図 1. Android スタック

ガバナンスの理念

Android を最初に開発したのは、Google が主導する、オープン ハンドセット アライアンス(OHA)と呼ばれる企業グループです。現在では、OHA に当初から属していた企業も属していなかった企業も含む多くの企業が、Android に多額の投資を行っています。これらの企業は、Android を改善して Android デバイスを市場に投入するために大量のエンジニアリング リソースを割いています。

多くの企業が Android に投資してきたのは、私たちがオープン プラットフォームの必要性を信じているからこそです。Android は、(フリー ソフトウェアとは対照的に)意図的かつ明示的なオープンソースの取り組みです。ニーズを共有する組織グループは、共有プロダクトの単一の実装で共同作業するためにリソースをプールしてきました。何よりもまず、Android の理念は実際的です。その目標は、個々の協力者が調整およびカスタマイズできる共有プロダクトです。

もちろん、管理されないカスタマイズにより、互換性のない実装が生まれる可能性はあります。これを防ぐために、Android オープンソース プロジェクト(AOSP)は、Android 互換性プログラムを管理しています。これは、「Android 対応」の意味と、デバイス ビルダーが「Android 対応」を実現するために何が必要かを詳細に説明したものです。Android のソースコードは、誰であれ任意の目的で使用できます。私たちはすべての正当な使用を歓迎します。しかし、私たちが開発している Android 関連アプリの共有エコシステムにデバイス ビルダーが参加するには、Android 互換性プログラムに参加していただく必要があります。

AOSP を主導する Google は、Android を管理し、さらに開発を進めています。Android は複数のサブプロジェクトで構成されていますが、AOSP はプロジェクト管理に活動を限定しています。AOSP は Android を単一の総合的なソフトウェア プロダクトと捉えて管理しており、Android の配布、仕様、交換用パーツの収集には関わっていません。AOSP の目的は、デバイス ビルダーが Android をデバイスに移植することです。デバイス ビルダーは仕様の実装や配布のキュレーションは行いません。