Google은 흑인 공동체를 위한 인종 간 평등을 진전시키기 위해 노력하고 있습니다. Google에서 어떤 노력을 하고 있는지 확인하세요.

직장 프로필 사용

직장 프로필은 관리 및 시각적 디자인 요소에 추가적인 특수 속성을 가진 Android 사용자입니다. 직장 프로필의 기본 목표는 관리 데이터(예: 회사 데이터)를 보관할 분리되고 안전한 공간을 만드는 것입니다. 프로필의 관리자는 데이터의 범위, 인그레스, 이그레스, 수명을 완전히 제어합니다. 이러한 정책은 큰 권한을 제공하기 때문에 기기 관리자가 아닌 직장 프로필에 적용됩니다.

  • 생성. 기본 사용자의 모든 앱에서 직장 프로필을 만들 수 있습니다. 사용자는 직장 프로필이 생성되기 전에 직장 프로필 동작 및 정책 시행에 관해 알림을 받습니다.

  • 관리. 프로필 소유자라고 하는 앱은 DevicePolicyManager 클래스의 API를 프로그래매틱 방식으로 호출하여 사용을 제한할 수 있습니다. 프로필 소유자는 초기 프로필 설정에서 정의됩니다. 직장 프로필의 고유한 정책에는 앱 제한, 업데이트 가능성, 인텐트 동작 등이 있습니다.

  • 시각적 처리. 직장 프로필의 앱, 알림, 위젯에는 배지가 있으며 일반적으로 기본 사용자의 사용자 인터페이스(UI) 요소를 통해 인라인으로 사용할 수 있습니다.

데이터 분리

직장 프로필은 다음 데이터 분리 규칙을 사용합니다.

기본 사용자와 직장 프로필에 동일한 앱이 있는 경우 각자의 분리된 데이터로 앱의 범위가 지정됩니다. 일반적으로 앱은 독립적으로 작동하며 프로필-사용자 경계를 넘어 서로 직접 통신할 수 없습니다.

계정

직장 프로필의 계정은 기본 사용자로부터 구분되며 프로필 사용자 경계를 넘어 사용자 인증 정보에 액세스할 수 없습니다. 각 컨텍스트 내 앱만 각 계정에 액세스할 수 있습니다.

인텐트

관리자는 인텐트가 직장 프로필 내부에서 결정되는지 아니면 외부에서 결정되는지 제어합니다. 기본적으로 직장 프로필의 앱은 Device Policy API를 제외하고 직장 프로필 내부에 머물도록 범위가 지정됩니다.

기기 식별자

직장 프로필이 있는 개인 기기에서, Android 12 이상은 기기 하드웨어 식별자(IMEI, MEID, 일련번호)에 대한 액세스를 없애고 특정 조직으로의 직장 프로필 등록을 식별하는 고유한 등록별 ID를 제공합니다. 등록 ID는 초기화 시에도 안정적으로 유지되도록 보장되므로 직장 프로필이 있는 기기의 안정적인 인벤토리 추적이 지원됩니다.

직장 프로필이 있는 개인 소유 기기는 등록별 ID를 사용해야 합니다. 직장 프로필과 완전 관리형 기기를 비롯한 회사 소유 기기도 등록별 ID를 사용하도록 선택할 수 있습니다. 등록별 ID를 사용하려면 EMM이 관리하는 각 기기를 대상으로 조직 ID를 설정해야 합니다. 그런 다음 기기에서 등록별 ID를 읽고 이를 일련번호로 처리할 수 있습니다. 자세한 내용은 직장 프로필의 보안 및 개인 정보 보호 개선사항을 참고하세요.

설정

설정 적용은 잠금 화면과 암호화 설정을 제외하면 직장 프로필로 범위가 지정됩니다. (잠금 화면과 암호화 설정은 범위가 기기로 지정되고 기본 사용자와 직장 프로필 간에 공유됩니다.) 이러한 예외를 제외하면 프로필 소유자는 직장 프로필 외에 기기 관리자 권한을 갖지 않습니다.

직장 프로필은 uid = 100000 \* userid + appid가 되도록 보조 사용자로 구현됩니다. 이러한 프로필은 일반 사용자처럼 별도의 앱 데이터(/data/user/userid)를 갖습니다. userid는 모든 시스템 요청을 대상으로 Binder.getCallingUid()를 사용하여 계산되고, 모든 시스템 상태와 응답은 userid 값으로 구분됩니다.

AccountManagerService는 사용자별로 별도의 계정 목록을 유지합니다. 직장 프로필 사용자와 일반 보조 사용자의 계정에는 다음과 같은 차이가 있습니다.

  • 직장 프로필은 상위 사용자와 연결되며 부팅 시 기본 사용자로 시작됩니다.

  • 직장 프로필의 알림은 ActivityManagerService로 사용 설정되므로 직장 프로필이 기본 사용자와 액티비티 스택을 공유할 수 있습니다.

  • 그 밖에도 IME, A11Y 서비스, Wi-Fi, NFC와 같은 시스템 서비스가 공유됩니다.

  • 런처 API를 통해 런처가 직장 프로필의 배지가 있는 앱과 허용 목록에 포함된 위젯을 사용자 전환 없이 기본 프로필의 앱 옆에 표시할 수 있습니다.

기기 관리

Android 엔터프라이즈 기기 관리는 다음 소유자를 포함합니다.

  • 프로필 소유자. BYOD(Bring Your Own Device) 환경에 사용할 수 있도록 설계됨.
  • 기기 소유자. 기업 환경에 사용할 수 있도록 설계됨.

일부 기기 관리 API는 소비자용으로 사용되고(예: 내 기기 찾기 API), 일부 API는 프로필 또는 기기 소유자만 사용할 수 있습니다.

프로필 소유자

DPC(Device Policy Client) 앱은 프로필 소유자로 기능하며 일반적으로 Google Apps Device Policy와 같은 엔터프라이즈 모바일 관리(EMM) 파트너가 제공합니다. 프로필 소유자 앱은 ACTION_PROVISION_MANAGED_PROFILE 인텐트를 전송하여 기기에서 직장 프로필을 생성합니다. 직장 프로필은 앱의 개인 인스턴스에 비해 시각적으로 분명히 구분되는 앱의 배지가 있는 인스턴스를 갖습니다. 배지는 앱을 직장 앱으로 식별해 줍니다. EMM은 개인 프로필이 아닌 직장 프로필만 제어합니다(잠금 화면 적용하기와 같은 일부 예외가 있음).

기기 소유자

기기 소유자는 초기 기기 설정 중에 프로비저닝되어야 하므로 프로비저닝되지 않은 기기에서만 설정할 수 있습니다. 빠른 설정은 항상 공개 문구를 표시해야 합니다. 기기 소유자는 프로필 소유자가 실행할 수 없는 다음과 같은 몇 가지 작업을 실행할 수 있습니다.

  • 기기 데이터 완전 삭제.
  • Wi-Fi 또는 블루투스 사용 중지.
  • setGlobalSetting의 값 설정.
  • setLockTaskPackages의 값 설정. 이를 통해 포그라운드에 고정 가능한 패키지를 허용 목록에 추가할 수 있습니다.
  • DISALLOW_MOUNT_PHYSICAL_MEDIA의 값 설정(기본값: FALSE). TRUE로 설정된 경우 채택 가능한 휴대용 물리적 매체를 마운트할 수 없습니다.

DevicePolicyManager API

Android 5.0 이상에서는 앱 제한, 인증서 자동 설치, 인텐트 액세스를 공유하는 교차 프로필 제어 등을 포함하는 회사 소유 및 BYOD(Bring Your Own Device) 관리 사용 사례를 지원하는 API를 갖는 개선된 DevicePolicyManager를 제공합니다. 시작하려면 샘플 DPC(Device Policy Client) 앱 BasicManagedProfile.apk를 사용하세요. 자세한 내용은 기기 정책 컨트롤러 빌드를 참고하세요.

직장 프로필 사용자 환경

Android 9 이상에서는 직장 프로필과 Android 플랫폼을 보다 긴밀하게 통합하여 사용자가 기기에서 직장 정보와 개인 정보를 쉽게 분리하여 유지할 수 있도록 지원합니다. 직장 프로필 변경사항이 런처에 표시되어 관리 기기에서 일관된 사용자 환경이 제공됩니다.

앱 트레이가 있는 기기

Android 9 이상에 적용된 Launcher3의 직장 프로필 UX 변경사항은 사용자가 개인 프로필과 직장 프로필을 분리하여 유지할 수 있도록 지원합니다. 앱 검색 창에는 탭으로 표시된 뷰가 제공되어 개인 프로필 앱을 구분할 수 있습니다. 사용자가 직장 프로필 탭을 처음으로 볼 때 직장 프로필을 탐색할 수 있도록 도와주는 교육용 뷰가 표시됩니다. 런처의 직장 탭에서 전환 버튼을 사용하여 직장 프로필을 설정 또는 해제할 수도 있습니다.

탭으로 표시된 프로필 뷰

Android 9 이상에서 직장 프로필을 사용하면 앱 검색 창에서 개인 앱 목록과 관리 앱 목록 간에 전환할 수 있습니다. 앱 뷰는 ViewPager가 관리하는 두 개의 개별 RecyclerViews로 구분됩니다. 사용자는 아래 그림과 같이 앱 검색 창 상단의 프로필 탭을 사용하여 여러 프로필 뷰를 전환할 수 있습니다.


그림 1. 개인 탭 뷰

그림 2. 직장 탭 뷰, 직장 프로필 전환 버튼

탭으로 표시된 뷰는 AllAppsContainerView Launcher3 클래스의 일부로 구현됩니다. 탭으로 표시된 프로필 표시기의 참조 구현은 PersonalWorkSlidingTabStrip 클래스를 참고하세요.

교육용 뷰

Android 9 이상에서는 사용자에게 직장 탭의 목적과 직장 앱에 더 쉽게 액세스하는 방법을 알려주는 교육용 뷰가 지원됩니다. Launcher3을 사용하면 사용자가 처음으로 직장 탭을 열 때 아래 그림과 같이 직장 탭 하단에 교육용 뷰를 표시할 수 있습니다.

교육용 뷰

그림 3. 교육용 뷰

교육용 뷰는 BottomUserEducationView 클래스로 정의되며 레이아웃은 work_tab_tottom_user_education_view.xml에 의해 제어됩니다. 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. 런처 또는 앱 검색 창을 열고 TestDPC 설정을 선택합니다.

  3. 화면에 표시된 안내에 따라 직장 프로필을 설정합니다.


    그림 4. 직장 프로필 설정


    그림 5. 계정 추가


    그림 6. 설정 완료

  4. 런처 또는 앱 검색 창을 열어서 직장 탭이 있고 직장 프로필 바닥글을 포함하는지 확인합니다.

  5. 직장 프로필을 전환하여 켜거나 끄면 직장 프로필에 예상대로 사용 설정되고 사용 중지되는지 확인합니다. 다음 그림은 사용 설정된 직장 프로필과 사용 중지된 직장 프로필의 예를 보여줍니다.


    그림 7. 전환하여 켜기, 직장 프로필 사용 설정됨

    그림 8. 전환하여 끄기, 직장 프로필 사용 중지됨

직장 프로필 앱 배지

Android 9 이상에서는 접근성을 위해 직장 배지의 색상이 주황색에서 파란색(#1A73E8)으로 변경되었습니다.