Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る

モジュラー システム コンポーネント

Android 10 は、一部の Android システム コンポーネントをモジュール化しており、Android の通常のリリース サイクル以外で更新できます。エンドユーザー デバイスは、Google Play ストアのインフラストラクチャまたはパートナーが提供する無線(OTA)メカニズムを使用して、モジュール化されたシステム コンポーネントのアップデートを受信できます。

モジュラー システム コンポーネントについて

Google と Android のパートナーは、モジュラー システム コンポーネントを使用して、エンドユーザー デバイスに対し、非公開の形で広範囲、迅速、かつシームレスにアップデートを配布できます。たとえば、メディア コーデックの断片化と致命的なバグが重なると、アプリの利用率とユーザー エンゲージメントが著しく低下する可能性があります。メディア関連のモジュールを頻繁に更新すると、コーデックの断片化が緩和されます。さまざまな Android 搭載デバイス間でメディアアプリは安定して動作するようになり、重大なバグは修正されてユーザーの信頼を構築できます。

アーキテクチャ

Android 10 は、選択したシステム コンポーネントを、モジュールに変換します。モジュールの一部は、APEX コンテナ形式(Android 10 で導入)を使用し、その他は APK 形式を使用します。モジュラー アーキテクチャにより、下位レベルのベンダー実装や上位レベルのアプリとサービスに影響を与えることなく、システム コンポーネントを随時更新して、重大なバグの修正やその他の改善を行うことができます。

図 1. モジュール化されたシステム コンポーネント

モジュール アップデートでは、新しい API は導入されません。互換性テストスイート(CTS)で保証されている SDK と System API のみを使用します。相互に対する通信のみを行い、安定版の C API または安定版の AIDL インターフェースのみを使用します。

更新されたモジュラー システム コンポーネントをまとめてパッケージ化し、Google(Google Play ストア インフラストラクチャを使用)または Android パートナー(パートナーが提供する OTA メカニズムを使用)を通じてエンドユーザー デバイスにプッシュできます。モジュール パッケージは「アトミック」にインストールされ、ロールバックされます。つまり、更新が必要なモジュールがすべて更新されるか、またはすべて更新されません。たとえば、なんらかの理由で更新できないモジュールがある場合は、パッケージ内のどのモジュールもデバイスにインストールされません。

利用可能なモジュール

Android 10 には次のモジュールが含まれています。

モジュール名 パッケージ名 タイプ

Runtime

com.android.runtime.release.apex

APEX

Captive Portal Login

com.android.captiveportallogin

APK

Conscrypt

com.android.conscrypt

APEX

DNS Resolver

com.android.resolv

APEX

DocumentsUI

com.android.documentsui

APK

ExtServices

com.android.ext.services

APK

Media Codec

com.android.media.swcodec

APEX

Media Extractor と Media2 API

com.android.media

APEX

ModuleMetadata

com.android.modulemetadata

APK

Network Stack Permission Configuration

com.android.networkstack.permissionconfig

APK

Network Components

com.android.networkstack

APK

PermissionController

com.android.permissioncontroller

APK

Time Zone Data

com.android.tzdata

APEX