전화가 왔을 때 캐치해서 뭔가 처리 가능할지?
- 앱이 포그라운드일 경우 핸들러를 통해 다음 상태에 대해서 캐치 가능
- 전화 연결 상태
- 전화 알림 상태
- 전화 수신 상태
- 전화 종료 상태
- 앱이 백그라운드이거나 실행 중이 아닐 때에는 캐치 불가능
- 다만 VoIP 전화일 경우 앱이 실행 중이 아니어도 캐치 가능
- VoIP Push Notification을 이용해서 가능
- 전화 건 사용자의 UUID, 설정된 유저 이름, 영상통화인지 아닌지 등 확인 가능
후후(스팸 전화 차단 서비스) 같은 앱은 잘 되던데 어떻게 한거냐?
- 스팸 전화 차단 서비스 같은 앱은 Call Directory Extension을 이용하여 처리하는건데 이건 오직 전화 수신 시, 기존에 설정해둔 발신자 정보표시만 변경 가능합니다.
- 따로 캐치해서 서버 태운다던지 다른 작업을 진행하는 건 불가능
수신된 전화번호 확인도 가능한지?
- 일반 전화는 불가능
- VoIP일 경우 수신된 사용자의 일부정보(UUID라던지) 확인 가능
기타 등등
- CallKit은 iOS 10부터 이용 가능
- 수신 UI, 발신 UI 변경 불가능 (있는 그대로 사용해야함)
결국 VoIP가 아닌 전화번호로 수신된 전화에 대해서는 할 수 있는게 거의 없습니다.
일반 전화에 대해서 CallKit을 이용해서 가능한 부분은 Call Directory Extension을 이용하여 [특정 전화번호 블락 기능, 특정 전화번호일 경우 이름 변환] 이것 뿐일 듯 합니다.