iOS CallKit 기술검토

OQ·2022년 3월 8일
0

iOS

목록 보기
3/8
post-thumbnail

CallKit

전화가 왔을 때 캐치해서 뭔가 처리 가능할지?

  • 앱이 포그라운드일 경우 핸들러를 통해 다음 상태에 대해서 캐치 가능
    • 전화 연결 상태
    • 전화 알림 상태
    • 전화 수신 상태
    • 전화 종료 상태
  • 앱이 백그라운드이거나 실행 중이 아닐 때에는 캐치 불가능
  • 다만 VoIP 전화일 경우 앱이 실행 중이 아니어도 캐치 가능
    • VoIP Push Notification을 이용해서 가능
    • 전화 건 사용자의 UUID, 설정된 유저 이름, 영상통화인지 아닌지 등 확인 가능

후후(스팸 전화 차단 서비스) 같은 앱은 잘 되던데 어떻게 한거냐?

  • 스팸 전화 차단 서비스 같은 앱은 Call Directory Extension을 이용하여 처리하는건데 이건 오직 전화 수신 시, 기존에 설정해둔 발신자 정보표시만 변경 가능합니다.
  • 따로 캐치해서 서버 태운다던지 다른 작업을 진행하는 건 불가능

수신된 전화번호 확인도 가능한지?

  • 일반 전화는 불가능
  • VoIP일 경우 수신된 사용자의 일부정보(UUID라던지) 확인 가능

기타 등등

  • CallKit은 iOS 10부터 이용 가능
  • 수신 UI, 발신 UI 변경 불가능 (있는 그대로 사용해야함)

결국 VoIP가 아닌 전화번호로 수신된 전화에 대해서는 할 수 있는게 거의 없습니다.

일반 전화에 대해서 CallKit을 이용해서 가능한 부분은 Call Directory Extension을 이용하여 [특정 전화번호 블락 기능, 특정 전화번호일 경우 이름 변환] 이것 뿐일 듯 합니다.

profile
덕업일치 iOS 개발자

0개의 댓글