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

仕事用プロファイルを使用する

仕事用プロファイルは、管理に関する特別な追加プロパティと視覚的特徴を持つ Android ユーザーです。仕事用プロファイルの主な目的は、管理対象データ(企業データなど)を格納するための分離された安全な領域を作成することです。プロファイルの管理者は、データのスコープ、出入り、存続期間を完全に制御できます。これらのポリシーは非常に強力であるため、デバイス管理者ではなく仕事用プロファイルによって管理されます。

  • 作成: プライマリ ユーザーのすべてのアプリは仕事用プロファイルを作成できます。仕事用プロファイルの作成前に、仕事用プロファイルの動作とポリシーの適用に関する通知がユーザーに送信されます。

  • 管理: プロファイル所有者として認識されるアプリは、DevicePolicyManager クラスの API をプログラムで呼び出して使用を制限できます。プロファイル所有者は、プロファイルの初期設定時に定義されます。仕事用プロファイルに固有のポリシーには、アプリの制限、更新可能性、インテントの動作が含まれます。

  • 視覚的特徴: 仕事用プロファイルのアプリ、通知、ウィジェットはバッジ付きで表示されます。通常は、プライマリ ユーザーのユーザー インターフェース(UI)要素の横で使用できます。

データの分離

仕事用プロファイルでは、以下のデータ分離ルールが使用されます。

アプリ

プライマリ ユーザーと仕事用プロファイルに同じアプリが存在する場合、各アプリのスコープはそれぞれの分離されたデータに制限されます。通常、アプリは独立して動作し、プロファイル / ユーザー境界を超えて直接通信することはできません。

アカウント

仕事用プロファイル内のアカウントはプライマリ ユーザーとは異なる一意のアカウントであり、プロファイル / ユーザー境界を超えて認証情報にアクセスすることはできません。それぞれのアカウントにアクセスできるのは、そのアカウントのコンテキストで実行されているアプリのみです。

インテント

管理者は、インテントが仕事用プロファイルの内部で解決されるか外部で解決されるかを制御できます。デフォルトでは、仕事用プロファイルのアプリのスコープは、Device Policy API の仕事用プロファイル例外内に制限されます。

デバイス識別子

仕事用プロファイルが設定された個人所有デバイスの場合、Android 12 以降ではデバイス ハードウェア識別子(IMEI、MEID、シリアル番号)へのアクセス権が削除され、特定の組織に対する仕事用プロファイル登録を識別する一意の登録固有の ID が提供されます。登録 ID は、出荷時設定へのリセット後も安定していることが保証されており、仕事用プロファイルが設定されたデバイスの信頼性の高いインベントリ トラッキングを可能にします。

仕事用プロファイルが設定された個人所有デバイスは、登録固有の ID を使用する必要があります。会社所有デバイス(仕事用プロファイルが設定されたデバイスと完全管理対象デバイスの両方を含む)も、この ID の使用をオプトインできます。EMM を使用するには、EMM が管理する各デバイスの組織 ID を設定する必要があります。その後、そのデバイスで登録固有の ID を読み取り、それをシリアル番号として処理できます。詳しくは、仕事用プロファイルのセキュリティとプライバシーの強化をご覧ください。

設定

設定の適用のスコープは仕事用プロファイルに制限されます。ただし、例外としてロック画面と暗号化の設定のスコープはデバイスに制限され、この設定はプライマリ ユーザーと仕事用プロファイルの間で共有されます。この例外を除いて、プロファイル所有者は仕事用プロファイルの外部ではデバイス管理者権限を持ちません。

仕事用プロファイルは、uid = 100000 \* userid + appid となるようなセカンダリ ユーザーとして実装されます。このようなプロファイルには、通常のユーザーと同様に、個別のアプリデータ(/data/user/userid)があります。userid は、Binder.getCallingUid() を使用するすべてのシステム リクエストで計算され、すべてのシステム状態とレスポンスは userid 値で分離されます。

AccountManagerService は、ユーザーごとに分離されたアカウント リストを保持します。仕事用プロファイル ユーザーと通常のセカンダリ ユーザーのアカウントには、次のような違いがあります。

  • 仕事用プロファイルはその親ユーザーに関連付けられており、起動時にプライマリ ユーザーで開始されます。

  • 仕事用プロファイルの通知は ActivityManagerService によって有効化されます。これにより、仕事用プロファイルはアクティビティ スタックをプライマリ ユーザーと共有できます。

  • 共有される追加のシステム サービスには、IME、A11Y サービス、Wi-Fi、NFC などがあります。

  • Launcher API により、ランチャーはユーザーを切り替えることなく、仕事用プロファイルのバッジ付きアプリと許可リストに登録されたウィジェットを、プライマリ プロファイルのアプリの横に表示できます。

デバイス管理

Android Enterprise デバイス管理には、以下の所有者が存在します。

  • プロファイル所有者: 個人所有デバイスの業務使用(BYOD)環境向けに設計されています。
  • デバイス所有者: 会社所有環境向けに設計されています。

一部のデバイス管理 API(デバイスを探す API など)は一般ユーザー向けですが、プロファイル所有者またはデバイス所有者のみが使用できる API もあります。

プロファイル所有者

デバイス ポリシー クライアント(DPC)アプリはプロファイル所有者として機能します。一般的には、Google Apps Device Policy などの企業向けモバイル管理(EMM)パートナーによって提供されます。プロファイル所有者アプリは、ACTION_PROVISION_MANAGED_PROFILE インテントを送信することで、デバイスに仕事用プロファイルを作成します。仕事用プロファイルには、アプリの個人用インスタンスと視覚的に区別できる異なるバッジ付きインスタンスがあります。バッジは、アプリが仕事用アプリであることを示します。EMM は仕事用プロファイルのみを制御し、個人用スペースは制御しません(ただし、例外としてロック画面の強制適用などがあります)。

デバイス所有者

デバイス所有者は、プロビジョニングされていないデバイスでのみ設定できます。これは、デバイスの初期設定時に所有者をプロビジョニングする必要があるためです。クイック設定では、常に情報開示を表示する必要があります。デバイス所有者は、プロファイル所有者が実行できない次のようなタスクを実行できます。

  • デバイスのデータをワイプする。
  • Wi-Fi または Bluetooth を無効にする。
  • setGlobalSetting の値を設定する。
  • setLockTaskPackages の値を設定する。これは、自分自身をフォアグラウンドに固定できるパッケージを許可リストに登録する機能です。
  • DISALLOW_MOUNT_PHYSICAL_MEDIA の値を設定する。これはデフォルトでは FALSE です。TRUE に設定すると、持ち運びできる導入可能な物理メディアをマウントできなくなります。

DevicePolicyManager API

Android 5.0 以降では、会社所有デバイスおよび個人所有デバイスの業務使用(BYOD)の管理ユースケースをサポートする API により、DevicePolicyManager が改善されています。これには、アプリの制限、証明書の自動インストール、プロファイル間のインテント アクセス共有の制御が含まれます。最初は、サンプルのデバイス ポリシー クライアント(DPC)アプリ BasicManagedProfile.apk を使用します。詳しくは、デバイス ポリシー コントローラを構築するをご覧ください。

仕事用プロファイルのユーザー エクスペリエンス

Android 9 以降では、仕事用プロファイルと Android プラットフォームの統合が強化されており、ユーザーはデバイス上で仕事の情報と個人情報を簡単に分離できます。仕事用プロファイルの変更はランチャーに表示され、管理対象デバイス全体で一貫したユーザー エクスペリエンスが提供されます。

アプリトレイがあるデバイス

Android 9 以降では、Launcher3 での仕事用プロファイルの UX の変更により、個人用プロファイルと仕事用プロファイルを別々に管理することが容易になりました。アプリドロワーには、タブ付きのビューが表示され、個人用プロファイルのアプリを区別できます。ユーザーが初めて仕事用プロファイル タブを表示すると、仕事用プロファイルでの操作に役立つ情報ビューが表示されます。また、ランチャーの仕事用タブで切り替えボタンを使用して、仕事用プロファイルのオンとオフを切り替えることができます。

タブ付きのプロファイル ビュー

Android 9 以降では、仕事用プロファイルにより、アプリドロワーで個人用アプリのリストと管理対象アプリのリストを切り替えることができます。アプリビューは、ViewPager によって管理される 2 つの RecyclerViews に分かれています。ユーザーは、次に示すように、アプリドロワーの上部にあるプロファイル タブを使用して、プロファイル ビューを切り替えることができます。


図 1. 個人用タブビュー

図 2. 仕事用タブビュー、仕事用プロファイル切り替えボタン

タブ付きビューは、Launcher3 の AllAppsContainerView クラスの一部として実装されます。タブ付きプロファイル インジケーターのリファレンス実装については、PersonalWorkSlidingTabStrip クラスを参照してください。

情報ビュー

Android 9 以降では情報ビューがサポートされています。このビューは、仕事用タブの目的と、それを使って仕事用アプリに簡単にアクセスする方法についてユーザーに説明するものです。Launcher3 を使用すると、次に示すとおり、ユーザーが初めて仕事用タブを開いたときに、仕事用タブ画面の下部に情報ビューを表示できます。

情報ビュー

図 3. 情報ビュー

情報ビューは、work_tab_tottom_user_education_view.xml によって制御されるレイアウトを持つ BottomUserEducationView クラスによって定義されます。BottomUserEducationView 内の KEY_SHOWED_BOTTOM_USER_EDUCATION ブール値は、デフォルトで false に設定されています。ユーザーが情報ビューを非表示にすると、このブール値は true に設定されます。

仕事用プロファイルのオンとオフを切り替える

Android 9 以降では、管理対象デバイスの管理者は、ユーザーが仕事用プロファイルを有効化または無効化する切り替えボタンを仕事用タブのフッターに表示できます。仕事用プロファイルの有効化と無効化は非同期で行われ、すべての有効なユーザー プロファイルに適用されます。このプロセスは WorkModeSwitch クラスによって制御されます。切り替えのソースについては、WorkFooterContainer を参照してください。

アプリトレイがないデバイス

アプリトレイがないランチャーの場合は、引き続き仕事用プロファイル アプリのショートカットを仕事用フォルダに配置します。仕事用フォルダに情報が正しく入力されず、新たにインストールされたアプリがフォルダに追加されない場合は、ManagedProfileHeuristic クラスの onAllAppsLoaded メソッドに次の変更を適用します。

for (LauncherActivityInfo app : apps) {
        // Queue all items which should go in the work folder.
        if (app.getFirstInstallTime() < Long.MAX\_VALUE) {
                InstallShortcutReceiver.queueActivityInfo(app, context);
        }
}

UX の変更を検証する

TestDPC アプリを使用して仕事用プロファイルの UX 実装をテストするには:

  1. Google Play ストアからデバイスに TestDPC アプリをインストールします。

  2. ランチャーまたはアプリドロワーを開き、[Set up TestDPC] を選択します。

  3. 画面の指示に沿って仕事用プロファイルを設定します。


    図 4. 仕事用プロファイルの設定


    図 5. アカウントの追加


    図 6. 設定完了

  4. ランチャーまたはアプリドロワーを開き、仕事用タブが存在することと、仕事用プロファイルにフッターが含まれていることを確認します。

  5. 仕事用プロファイルを思いどおりに有効化および無効化して、仕事用プロファイルのオンとオフを切り替えられることを確認します。次の図は、有効化および無効化された仕事用プロファイルの例を示しています。


    図 7. オンに切り替え - 有効化された仕事用プロファイル

    図 8. オフに切り替え - 無効化された仕事用プロファイル

仕事用プロファイル アプリのバッジ

Android 9 以降では、ユーザー補助の観点から、仕事用バッジの色はオレンジ色ではなく青色(#1A73E8)になっています。