既存のデバイスを AMAPI に移行する

カスタム DPC ですでに管理されているデバイスを Android デバイスに移行できます ポリシー(ADP)を実装し、Android Management API を利用する。

前提条件

  • デバイスが、カスタム DPC を使用する EMM によってすでに管理されている。
  • カスタム DPC は AMAPI SDK と統合されています。
  • デバイスが Google Play EMM API に登録されている。
  • デバイスが managed Google Play アカウント エンタープライズに属している。
  • デバイスに Android 9 以降が搭載されている。
  • 会社所有デバイスで仕事用プロファイルを使用する場合、そのデバイスは Android 11 以降。

カスタム DPC で AMAPI SDK と統合する

移行プロセスでは、カスタム DPC アプリケーションで AMAPI SDK。このライブラリの詳細と追加方法をご確認ください AMAPI SDK 統合ガイドをアプリに追加してください。

デバイスの移行手順

  1. 移行後のデバイスで使用するためのポリシーを設定します AMAPI に統合されています。最適なユーザー エクスペリエンスを実現するには、このポリシーを DPC によってデバイスにすでに適用されているポリシー。
  2. 呼び出して、デバイスの移行トークンを作成します。 enterprises.migrationTokens.create
  3. この移行トークンの value を次のアドレスに送信します。 カスタム DPC
  4. 次のコマンドを使用して、Android Device Policy がデバイスにインストールされていることを確認します。 Play EMM API
  5. DpcMigrationClientFactory を使用して以下を作成します。 DpcMigrationClient
  6. DpcMigrationClient で、 migrateDeviceManagementToAndroidManagementApi メソッドを使用します。 これで移行は完了です。
  7. deviceStateACTIVE に変わり、 Pub/Sub チャネルを介した STATUS_REPORT メッセージ。

移行が完了すると、呼び出し元アプリのデバイス所有者またはプロファイルが失われます 所有者権限(これらは Android Device Policy に移行されるため)。

注: 移行を開始するには、デバイスをインターネットに接続する必要があります。 このプロセスは、接続中のネットワーク切断に耐えられるよう設計されています。 ネットワーク接続を必要とする主要なオペレーションに デバイス所有者またはプロファイル所有者の権利が実際に譲渡される前に行われる DPC から Android Device Policy への同期が行われます。

移行トークン

EMM サーバーから移行トークンをリクエストして、移行の意図を通知します。 カスタム DPC によって管理されている特定のデバイスを移行します。 移行トークンは、移行が正常に完了するまで使用できます。また、 期限切れになります。

カスタム DPC の統合

まず、DpcMigrationRequest を作成し、 トークンと、必要に応じてそのトークンが設定された Wi-Fi ネットワークのリストが ビルダー:

// Create a DpcMigrationRequest
DpcMigrationRequest request =
        DpcMigrationRequest.builder()
            .setMigrationToken(token)
            .build();

その後、DpcMigrationClient を取得して、 移行プロセスを migrateDeviceManagementToAndroidManagementApi:

// Create a DpcMigrationClient
DpcMigrationClient dpcMigrationClient = DpcMigrationClientFactory.create(context);
try {
  // Use helper function to retrieve Admin component name
  var adminComponentName = getAdminComponent(context);

  ListenableFuture<DpcMigrationAttempt> futureAttempt =
          dpcMigrationClient.migrateDeviceManagementToAndroidManagementApi(
              new ComponentName(context, DpcMigrationNotificationReceiver.class),
              adminComponentName,
              request);
  // handle futureAttempt
} catch (RuntimeException e) {
  // send failure feedback: "Error: " + e
}

移行の進行状況を追跡する

移行プロセスは、 DpcMigrationAttempt

terraform plan または terraform apply によって返された migrateDeviceManagementToAndroidManagementApi、または getMigrationAttempt および listMigrationAttempts メソッド 移行の試みを列挙します。

// Passing an empty name, we retrieve the last attempt 
var request = GetDpcMigrationAttemptRequest.builder().build();

var attempt = client.getMigrationAttempt(request);

必要に応じて、次のコマンドを使用して DpcMigrationListener を設定できます。 NotificationReceiverService: DpcMigrationAttempt のステータスの更新。

// DpcMigrationNotificationReceiver for callback handling
public class DpcMigrationNotificationReceiver extends NotificationReceiverService
    implements DpcMigrationListener {

  @Override
  protected DpcMigrationListener getDpcMigrationListener() {
    // getDpcMigrationListener"
    return this;
  }

  @Override
  public void onMigrationStateChanged(DpcMigrationAttempt migrationAttempt) {
    // send success feedback
  }
}

Wi-Fi ネットワークを処理する

カスタム DPC で管理されている Wi-Fi ネットワークがある場合は、AMAPI ONC ポリシーをご覧ください。 AMAPI が管理を開始できるように、これらのネットワークの構成を一致させる必要があります。 スムーズに行えますDPC 移行と Wi-Fi 管理の相互作用はさまざま Cloud Storage へのアクセスが必要です。

完全管理対象デバイスと会社所有デバイス上の仕事用プロファイル

移行中、Android Device Policy は、すべての Wi-Fi ネットワークが ポリシーで設定されている SSID とセキュリティ タイプが同じである デバイスに設定されている Wi-Fi ネットワークが、設定されている Wi-Fi ネットワークと一致します。 Wi-Fi ネットワーク。そのため、カスタム DPC によって設定された Wi-Fi ネットワークには変更を加えない 対応する ONC ポリシーが変更されるまで、 接続しますただし、移行後にカスタム DPC をアンインストールすると、 カスタム DPC で設定された Wi-Fi ネットワークは自動的に削除されます。 Android Device Policy はポリシーを適用し続けます。これらのネットワークのいずれかが ポリシーで設定されているネットワークは、 。

個人用デバイスの仕事用プロファイル

技術的な理由により、カスタム DPC によって設定された Wi-Fi ネットワークは、 Android 用カスタム DPC デバイス ポリシーによって削除され、 Wi-Fi ネットワーク。AMAPI SDK がこの処理を行い、Wi-Fi ネットワークを削除します。 カスタム DPC から Android Device Policy に所有権を移行する前に カスタム DPC からこれらのネットワークに関する情報を DpcMigrationRequest。移行後のネットワークは [ポリシーで設定] は通常どおり追加されるため、 カスタム DPC によって追加されたネットワークもポリシーで設定する必要があります。

以下の点に注意してください。

  • アクティブなネットワークが、カスタム DPC によって設定された Wi-Fi ネットワークである場合、デバイスは 移行中に一時的にオフラインになる可能性があります。
  • カスタム DPC で設定された Wi-Fi ネットワークのみを渡す必要があります。 DpcMigrationRequest。それ以外の場合、移行は AMAPI SDK で削除できない(ユーザーが追加した Wi-Fi ネットワークなど)。
  • Wi-Fi ネットワークは DpcMigrationRequest: カスタム DPC が プロファイル所有者が必要です。それ以外の場合、移行は失敗します。
  • 技術的な理由から、Android 12 は例外的なケースであり、ネットワーク DpcMigrationRequest で渡されたものは無視され、すべての Wi-Fi 接続は カスタム DPC で設定されたネットワークは自動的に削除されます。さらに、 カスタム DPC で ACCESS_WIFI_STATE を使用するための要件 個人所有デバイスの仕事用プロファイルに対する Android 12 の権限 それ以外の場合、移行は失敗します。

注意点

この機能に関連する注意点は次のとおりです。

企業固有の ID

Android 12 以降の仕事用プロファイルの場合、企業固有の ID DevicePolicyManager.getEnrollmentSpecificId からアクセスできます。 移行時に変更されることはありません。ただし、 Android Device Policy で管理されているが、デバイスで再度作成される(例: 以前のデバイスを削除した後、またはデバイスを出荷時の設定にリセットした後)、 変更されます。

完全管理対象デバイスの仕事用プロファイル

この機能は、仕事用 プロファイルに Android 9 または 10 が搭載されている必要があります。これらのデバイスの移行は試行しないでください。 エラーが発生したかどうかに関係なく、そのようなデバイスはサポートされていません。 DPC 移行の対象になります