Android では、複数ユーザーの設定、アプリ、データがサポートされています。Android Automotive は、Android のマルチユーザー サポートを利用してデバイスの共有を実現しています。各デバイスの「ユーザー」は、それぞれ異なる人物によって使用されることが想定されています。Android 10 以降、Android Automotive では次のタイプのユーザーがサポートされています。
- ヘッドレス システム ユーザー。ヘッドレス システム ユーザーはバックグラウンドで動作し、すべてのシステム サービスをホストします。Automotive の場合、システム ユーザーは、人間が直接使用することも、直接アクセスすることも想定されていません。
- 通常のユーザー。Automotive デバイスは共有デバイスであり、各ユーザーは、それぞれ異なる人物によって使用されることが想定されています。Android ユーザーはさまざまなロールを持つことができます。詳細については、後述の「ロールと制限」をご覧ください。Automotive では、通常のユーザーはすべてセカンダリ ユーザーです。
- ゲストユーザー。Automotive ユーザーには、車両を借りる友人など、一時的なユーザーを含めることができます。このような用途に対応するため、Android Automotive では、ゲストユーザーが車両を使用するために必要なすべてのコンポーネントにアクセスできます。1 台のデバイスで一度に定義できるゲストユーザーは 1 人だけです。
注: プライマリ ユーザー フラグ(FLAG_PRIMARY
)は、Automotive ヘッドレス システム ユーザー モデルではまだサポートされていません。
下図は、Automotive ヘッドレス システム ユーザー モードがマルチユーザー エクスペリエンスをどのようにサポートするかを示しています。
詳細については、Android Automotive でのマルチユーザーをご覧ください。
ロールと制限
車両は、さまざまな人が運転する可能性のある共有デバイスです。各自、独自のアプリやデータを保持する独自のユーザーを利用できます。ただし車両の所有者は、すべてのユーザーが同じようにデバイスを変更できるようにしたくない場合もあります。そのため Automotive では、ユーザーごとに異なるロールと制限を提供するという概念がサポートされています。サポートされているユーザーロールは次のとおりです。
- 管理者。デフォルトでは、管理者ロールを持つ通常のユーザーはすべてのタスクを実行できます。管理者ユーザーは、他のユーザーに管理者ロールを付与できます。
- 管理者以外。デフォルトでは、管理者以外のロールを持つ通常のユーザーは、デバイスのデータの初期化、自身への管理者ロールの付与、他のユーザーの削除を行うことはできません。
- ゲスト。デフォルトでは、ゲストユーザーはデバイスのデータを初期化することも、他のユーザーを削除することもできません。デフォルトでは、ゲストユーザーには、アカウントの変更(追加または削除)、アプリのインストール、ロック画面の適用ができないなど、その他の制限があります。デフォルトでは、ゲストは一時的なものです。
前述のように、各ロールにはデフォルトの制限セットがあるため、あるロールで作成された新しいユーザーには同じ制限が適用されます。