バックグラウンドの相関関係とシステム アーキテクチャの分析
1. Android の背景と現在のステータス
Android システムは Andy Rubin によって作成され、後に Google によって買収されました。最も古いバージョンは次のとおりです。 Android 1.1 バージョン。
最新バージョンは 5.28 で、Google I/O カンファレンスで発表されました。興味深いことに、Android システムの名前はすべてスナックにちなんで付けられています。次の表は、15 の Android バージョン名、対応する API 番号、リリース時期を示しています。 !
システムバージョン名 | APIバージョン番号 | リリース時期 |
---|
Android 1.5: Cupcake: Cupcake | 3 | 2009.4.30 |
Android 1.6: ドーナツ: ドーナツ | 4 | 2009.9.15 |
Android 2.0/2.0.1/2.1: エクレア: マフィン | 5/6/7 | 2009.10.26 |
Android 2.2/2.2.1 :Froyo:禅ヨーグルト | 8 | 2010.5.20 |
Android 2.3: ジンジャーブレッド: ジンジャーブレッド | 9 | 2010.12.7 |
Android 3.0: ハニカム: ハニカム | 11 011.2.2 | |
Android 3.1: ハニカム: ハニカム12 | 2011.5.11 | |
Android 3.2: ハニカム: ハニカム13 | 2011.7.13 | |
Android 4.0: Ice Cream Sandwich:アイスクリームサンドイッチ 14 | 2011.10.19 | |
Android 4.1: ジェリービーン: ジェリービーン16 | 2012.6.28 | |
Android 4.2: ジェリービーン: ジェリービーン17 | 2 | |
Android 4.3 : ジェリービーン: Jelly Bean18 | 2013.7.25 | |
Android 4.4: KitKat: KitKat19 | 2013.11.01 | |
Android 5.0: Lollipop: ロリポップ21 | 2014.10.16 | |
Android M: プレビュー22 | 2015.5.28 | |
さて、上記の公開バージョンに加えて、もちろん他のバージョンもいくつかあります。2015.1 の時点で、各バージョンの市場シェアは次のとおりです。質問:
システムのバージョンがたくさんあるのですが、どのバージョンをターゲットにして開発すればよいのでしょうか?
これは Android が必ず直面する Android の「断片化」問題ですが、この問題は次の 2 つに分けられます。
① システムの断片化: アプリを開発する場合、たとえば、さまざまな Rom カスタマイズが普及しているため、最低の互換性はバージョン 2.3 までである必要がある場合があります。システムにより、カメラコールなど、カスタムROMでは実行可能だが実行不可能な問題が発生します~
②画面の断片化: 市場には、4.3 インチ、4.5 インチ、4.7 インチ、5.0 インチ、5.3 インチなど、さまざまな画面サイズの携帯電話が販売されています。携帯電話に加えて、Android タブレットもあります。もちろん、この画面適応の問題については、最初に学習するときにこれらの複雑なことを考慮する必要はありません。今後、実際の開発について詳しく説明します。
2. Android システム機能とプラットフォーム アーキテクチャシステム機能:
アプリケーション フレームワークは、コンポーネントの再利用と置き換え
をサポートします (アプリはリリース時にフレームワークの規則に準拠しており、他のアプリもこのモジュールを使用できます) ) アーキテクチャの簡単な理解:
アプリケーション(アプリケーション層)一般的に、アプリケーション層の開発はこのレベルで実行されると言われています。もちろん、これには、Java 言語を使用して、システムに組み込まれた一連のアプリケーションが含まれています
アプリケーション フレームワーク (アプリケーション フレームワーク層) システムに組み込まれているのか、自分で作成したアプリに組み込まれているのかに関係なく、この層を使用する必要がありますなど、着信通話をブラックリストに登録して自動的に電話を切りたい場合は、TelephonyManager を使用する必要があります。
この層を通じて、基礎となる実装を気にすることなく、ハングアップ操作を簡単に実装できます
ライブラリ (ライブラリ) + Android ランタイム (Android ランタイム) Android は、メディア フレームワークなどのプラットフォームのさまざまなコンポーネントで使用される C/C++ ライブラリのセットを提供します。Android ランタイムは次のもので構成されます。 Android コア ライブラリ + Dalvik 仮想マシンは、Dalvik 仮想マシンで構成されます。Dalvik 仮想マシンは、高速な CPU 計算速度と大量のメモリ容量を必要としないという特徴があります。各アプリには Dalvik プロセスがあり、その単純な実行プロセスは次のとおりです:
Linux カーネルここでは、基盤となるドライバー、セキュリティなどのいくつかのシステム サービスが関係します。 、メモリ管理、プロセス管理など
3. このセクションの概要:
このセクションでは、Android の歴史的背景と現状を理解した後、Android のシステム特性とシステム アーキテクチャを簡単に分析します。 . これらの概念的なことだけを理解する必要があります。このセクションでは、Android 環境の構築を開始します。