[ios] iOS에서 IdentityLookupUI 프레임워크를 사용하는 방법

iOS 앱을 개발하는 동안 스팸 차단 및 incoming caller의 정보를 화면에 표시하려는 경우가 있습니다. 인증된 caller의 정보를 가져오고 표시하기 위해 iOS에서는 IdentityLookupUI 프레임워크를 사용할 수 있습니다.

이 기술 문서에서는 IdentityLookupUI 프레임워크를 사용하여 incoming caller의 정보를 가져오고 화면에 표시하는 방법을 안내하겠습니다.

필수 조건

IdentityLookupUI 프레임워크 추가

IdentityLookupUI 프레임워크는 iOS 앱에 직접 포함되어 있지 않으므로 직접 추가해야 합니다.

  1. Xcode를 열고 프로젝트를 선택합니다.
  2. 프로젝트 네비게이터에서 General을 선택합니다.
  3. Frameworks, Libraries, and Embedded Content 섹션에서 ‘+’ 버튼을 클릭합니다.
  4. 팝업 창에서 IdentityLookupUI를 검색하여 추가합니다.

사용자 동의 얻기

IdentityLookupUI를 사용하여 incoming caller 정보를 가져오기 위해서는 사용자 동의가 필요합니다. Info.plist 파일에 NSExtensionUsageDescription 키를 추가하여 사용 목적을 설명해야 합니다.

<key>NSExtensionUsageDescription</key>
<string>우리 앱은 incoming caller의 정보를 가져오기 위해 통화 앱과 연동합니다.</string>

IdentityLookupExtension 생성

IdentityLookupUI를 사용하기 위해 IdentityLookupExtension을 생성해야 합니다.

  1. Xcode에서 File > New > Target로 이동합니다.
  2. 화면에서 Call Directory Extension 템플릿을 선택하고 Next를 클릭합니다.
  3. Extension의 이름을 지정하고 Finish를 클릭합니다.

CallDirectoryDelegate 구현

이제 IdentityLookupExtension을 통해 incoming caller의 정보를 가져오기 위해 CallDirectoryDelegate를 구현합니다.

import IdentityLookup

class CallDirectoryHandler: CXCallDirectoryProvider {

    override func beginRequest(with context: CXCallDirectoryExtensionContext) {
        // incoming caller 정보 가져오는 로직 구현
    }
}

beginRequest(with:) 메서드를 구현하여 incoming caller의 정보를 가져오는 로직을 추가합니다.

컴파일하고 테스트하기

작성한 코드를 컴파일하고, 시뮬레이터나 실제 iOS 기기에서 앱을 실행하여 incoming caller의 정보가 제대로 표시되는지 테스트합니다. 테스트 후 문제가 없다면 해당 기능을 앱에 통합하여 사용자에게 제공할 수 있습니다.

이제 iOS에서 IdentityLookupUI 프레임워크를 사용하여 incoming caller의 정보를 가져오고 화면에 표시하는 방법에 대해 알아보았습니다.

더 자세한 내용은 Apple 공식 문서를 참고할 수 있습니다.