official instructionsに従って、4.0.1_r1 Androidソースコードリポジトリをダウンロードしました。リポジトリの基本的な命名規則を理解するのに役立つ人はいますか?Androidソースコードリポジトリの基本的な命名方式を理解する
たとえば、リポジトリのルートディレクトリで、正確には "frameworks"ディレクトリは何ですか?これは "packages"ディレクトリとどのように違うのですか?
official instructionsに従って、4.0.1_r1 Androidソースコードリポジトリをダウンロードしました。リポジトリの基本的な命名規則を理解するのに役立つ人はいますか?Androidソースコードリポジトリの基本的な命名方式を理解する
たとえば、リポジトリのルートディレクトリで、正確には "frameworks"ディレクトリは何ですか?これは "packages"ディレクトリとどのように違うのですか?
私は過去数年間、アンドロイドのソースコードの周りにかなりの時間を費やしてきたので、ルートのさまざまなフォルダについて説明しましょう。これらは、大きく分けて(Androidのバージョンのビットに依存)している:
生体
ブータブル
ビルド
build/target/products
には、lunch
を起動すると表示されるすべての汎用ビルドターゲットがあります。CTS
のDalvik
開発
デバイス
devices/{yourname}/products/{yourdevice}.mk
を指定できます(他にもいくつかの点があります)。これにより、ランチメニューに{yourdevice}
という名前のエントリを追加できます。ドキュメント私の知る限り、これは実際にhttp://source.android.com
の源であることを理解として
外部
bzip2
、dbus
、ping
、tcpdump
など多くのプロジェクトがあります。フレームワーク
AudioManager
にアクセスしている可能性があります。 AudioManager
のソースと、AudioManager
をサポートするすべての内部Androidソースは、frameworks/base/media
の下に配置されています。 Android SDKの大部分は、frameworks/base/
の下に実装されています。 (等バイブレータ、ライト、近接センサ、GPS、オーディオ、など)、ハードウェアを制御するライブラリのセットにハードウェア
hardware
フォルダに含まれていますが、製造元は独自のライブラリを実装してhardware/{manufcaturename}
(またはdevice/{manufacture}
)に配置します。libcore
(CおよびC++通常で)ネイティブコードとしてのアプリのアプリの開発者は、いくつか(またはすべて)をコードすることができ
すべて Androidのビルド成果物がここに配置されています。したがって、out
フォルダを削除すると、ソースが完全に消去されます。 out
は異なるフォルダに分割され、主なものはhost
とtarget
で、ホストマシン(たとえばadb)とターゲットデバイス(ほとんどのアンドロイドシステム)用にコンパイルされたものが分離されています。以下のサブディビジョンがあります。一般にout
フォルダはかなり整理されていますので、ちょっと自分で調べてください。
パッケージ
ビルトイン
SDK
システム
これはAndroidのソースでの作業との私の経験から、すべてのですが、私は任意の(他の)参照を持っていません。私はこれがあなたがフォルダ構造の概要を得るのを助けることを願っています。
非常に役に立ちます。ありがとうございました! – jgro
正確に何が必要なのですか...ありがとう – Pawan