Latest web development tutorials

Androidのアーキテクチャ

Androidオペレーティングシステムは、大きく分けて5つの部分と4つの主要な層に分けることができるアーキテクチャ図におけるソフトウェアスタックのコンポーネントです。

Androidのアーキテクチャ


Linuxカーネル

すべての層の最も下でのLinuxです - 115パッチのLinux 3.6について含みます。 このようなプロセス管理、メモリ管理、デバイス管理(例えば、カメラ、キーボード、モニタなど)のような基本的なシステム機能を提供します。 一方、Linuxカーネルは、周辺ハードウェアインタフェース互換性の不便さの多数を避けるために、すべての良い仕事、および、ネットワークドライバなどの機器の多くを処理します。


ライブラリ

Linuxカーネルの上位層には、オープンソースのWebブラウザエンジンのWebkitを含むライブラリのセットです、知られているのlibcライブラリ再生のためのSQLiteデータベースを共有データウェアハウスおよびアプリケーションのための、オーディオとビデオのライブラリを記録し、ネットワークセキュリティのためのSSLライブラリ。


Androidのライブラリ

このカテゴリには、AndroidのJavaベースのライブラリの特別に開発が含まれています。 このカテゴリーの例としては、ユーザインタフェースの構築、グラフ、およびデータベースへのアクセスなどのライブラリ、アプリケーション・フレームワークのライブラリを含みます。 次のようにAndroidのコアライブラリが利用できるいくつかのAndroidの開発者が要約されています:

  • android.app - アプリケーションモデルへのアクセスを提供するには、すべてのAndroidのアプリケーションの基礎となるものです。
  • android.content - コンビニエンスアプリケーション、アプリケーションコンポーネント、出版、メッセージング間でコンテンツのアクセスの間。
  • android.database - SQLiteデータベース管理クラスを含むコンテンツプロバイダによって放出されたデータにアクセスするために使用されます。
  • android.opengl - JavaインタフェースのためのAPIをレンダリングOpenGL ESの3D画像。
  • android.os - 間メッセージング、システムサービス、およびプロセス間通信を含むオペレーティング・システム・サービスへのアプリケーションのアクセスを提供する能力をマーク。
  • android.text - レンダリングおよびデバイスに表示されるテキストの操作。
  • android.view - ベースのアプリケーションのユーザーインターフェイスの構築ブロック。
  • android.widget - というように、ボタン、ラベル、リスト、レイアウトマネージャ、ラジオボタンなど、予め設定されたユーザインタフェースコンポーネントの豊富なセット。
  • android.webkit - アプリケーションに組み込みのWebブラウジング機能を提供することを可能にするクラスのコレクションのシリーズ。

層内で実行されているJavaベースのAndroidコアライブラリを読んで、C / C ++に基づいて、Androidソフトウェア・スタックのライブラリを見て時間です。


Androidのランタイム

これは、アーキテクチャの3番目の部分は、第2層底です。 このセクションでは、Java仮想マシンに類似のDalvik仮想マシンと呼ばれる主要なコンポーネントを提供していますが、設計とAndroidのために特別に最適化されています。

Dalvik仮想マシンは、メモリ管理やマルチスレッドように、JavaでLinuxカーネルの機能を利用することができます。 すべてのAndroidアプリケーションは、独自の独立した仮想マシンプロセス内で実行されるようにのDalvik仮想マシン。

Androidのは、Androidアプリケーションを作成するための標準的なAndroidアプリケーションの開発者はJava言語を使用するために、同時に実行されているコアライブラリの範囲を提供しています。


アプリケーションフレームワーク

Javaクラスの形でアプリケーションフレームワーク層アプリケーションの多くの先進的なサービスを提供しています。 アプリケーション開発者は、アプリケーションでこれらのサービスを使用することが許可されています。

  • イベントマネージャ - コントロールアプリケーションライフサイクル活動やスタックのすべての側面。
  • コンテンツプロバイダは - 出版およびアプリケーション間でデータの共有を可能にします。
  • リソースマネージャ - このような文字列、色の設定とユーザー・インターフェースのレイアウトとして、非コード埋め込みリソースへのアクセスを提供します。
  • 通知マネージャ - アプリケーションは、ダイアログボックスまたはユーザーへの通知が表示されますできます。
  • ビューシステム - アプリケーションのユーザー・インタフェースを作成するためのビューのスケーラブルなセット。

アプリケーション

トップ層は、すべてのAndroidアプリケーションを持っています。 あなたは、アプリケーションがこの層にインストールされます書きます。 これらのアプリケーションは、連絡先、ブラウザ、ゲームなどがあります。