엔터프라이즈 전화 통신 구현

이 문서에서는 엔터프라이즈 사용 사례를 지원하는 Android 프레임워크의 전화 통신 관련 부분을 개략적으로 설명합니다. 이 문서는 제조업체를 대상으로 작성되었으며 프레임워크와 관련된 전화 통신 변경 사항에 관해 집중적으로 설명합니다. 또한, OEM에서 전화 통신 관련 기능을 처리하는 미리 로드된 애플리케이션에 적용해야 하는 변경사항에 관해서도 설명합니다.

Android 7.0에는 엔터프라이즈 전화 통신 사용 사례를 지원하는 여러 새로운 기능이 도입되었는데, 특히 다음과 같은 기능이 있습니다.

  • 프로필 연락처 간 검색 - 개인 프로필의 애플리케이션이 관리 프로필 연락처 제공자가 공급하는 연락처를 검색할 수 있도록 합니다. 예를 들어, 이러한 연락처는 기기의 로컬 데이터 저장소 또는 엔터프라이즈 디렉터리 내에 있는 모든 데이터 저장소에서 지원할 수 있습니다.
  • 프로필 연락처 간 배지 설정 - 개인 연락처에서 직장 연락처를 확실하게 구분할 수 있습니다.
  • 연결 서비스가 관리 프로필을 인식하도록 설정 - 관리 프로필 내의 애플리케이션에서 개별 업무용 다이얼러 및 업무용 연결 서비스 제공과 같은 전화 통신 기능을 제공하도록 합니다.

Android 5.0에서는 다음 엔터프라이즈 전화 통신 기능을 지원했습니다.

예 및 소스

다이얼러, 연락처 및 메시지 앱의 Android 오픈소스 프로젝트(AOSP) 구현은 프로필 간 연락처 검색 및 배지 설정 기능을 통합했습니다.

예:

  • 직장 연락처에 배지 추가: packages/apps/ContactsCommon f3eb5a207bfe0ff3b4ed2350ae5865ed8bc59798 참조
  • 프로필 간 연락처 검색: packages/apps/ContactsCommon cd0b29ddbf3648e48f048196c62245d545bc6122 참조

구현

기기 구현자는 다이얼러 연락처 및 SMS/MMS 메시지 앱에서 연락처의 프로필 간 검색, 조회 및 배지 설정을 구현해야 합니다.

프로필 간 연락처 검색은 Enterprise Contacts API(ContactsContract.Contacts.ENTERPRISE_CONTENT_FILTER_URI 등)를 사용하여 구현해야 합니다. 이러한 API는 Android 개발자 사이트의 직장 프로필 연락처 가이드에서 찾을 수 있습니다.

직장 프로필 연락처 배지 설정

직장 프로필 연락처 배지 설정은 가능하면 ContactsContract.Directory.isEntepriseDirectoryId()를 확인하여 구현하고 그렇지 않으면 isEnterpriseContactId()를 확인하여 구현할 수 있습니다. 자세한 내용은 직장 프로필 연락처를 참조하세요.

관리 프로필에서 ConnectionService 인식

제조업체에서는 이 기능을 지원하기 위해 프레임워크 코드를 수정할 필요가 없지만, 이 기능이 통신 서비스 및 기타 전화 통신 기능에 미치는 영향을 알고 있어야 합니다.

유효성 검사

프로필 간 연락처 검색 및 배지 설정 기능은 다음 단계를 수행해 확인할 수 있습니다.

  1. 테스트 기기에서 TestDPC를 사용하여 관리 프로필을 설정합니다.
  2. 프로필 간 연락처 검색을 활성화합니다.
  3. 관리 프로필 내에서 로컬 직장 연락처를 추가합니다.
  4. 개인 프로필 내 시스템 다이얼러 연락처 및 SMS/MMS 메시지 앱에서 연락처를 검색하고 연락처가 있는지 그리고 이 연락처에 올바르게 배지가 설정되었는지 확인합니다.

기본 프로필 간 연락처 검색 API가 com/android/cts/managedprofile/ContactsTest.java에 구현되었는지 확인하기 위해 CTS 테스트가 추가되었습니다.