CallKit 응용 프로그램을 개발 중입니다. 문제가 있습니다. 사용자가 인앱 전화 화면으로 돌아올 때까지 CallKit 화면에서 전화를 "바꿔 치기"할 때 통화 보류가 오디오를 다시 시작하지 못합니다.CallKit은 통화를 바꾼 후에 소리를 다시 활성화 할 수 있습니다.
supportsHolding = false
을하지만 나는이 문제를 해결할 수, 제대로 수행 할 수 있습니다 예를 들어, WhatsApp에 : 나는 업데이트하여이 문제를 우회 할 수있다!
p.s. 나는 webrtc를 사용하여 전화를 걸고 있습니다!
감사합니다.
편집 :
이public func provider(_ provider: CXProvider, perform action: CXSetHeldCallAction) {
guard let call = conductor!.callWithUUID(uuid: action.callUUID) else {
WebRtcConductor.debug("\(self.TAG) failed to perform HeldAction: uuid: \(action.uuid), calluiid: \(action.callUUID)")
action.fail()
return
}
setIsHeld(call: call, isHeld: action.isOnHold)
action.fulfill()
}
setIsHeld 기능을 간단하게 수행합니다 :
audioTrack.isEnabled = enabled
내가 사용하는 경우 callkit 화면의 "음소거"버튼을, 모두가 잘 작동
이 공급자의 코드 ,하지만 만약 내가 2 활성 통화 webrtc 전화에서 정상적인 호출, CXSetHeldCallAction 호출 및 오디오 트랙을 사용하지 못했습니다, 내가 다시 webrtc 전화로 스 와이프, 오디오 트랙을 사용할 수 있지만 내가 할 아무 것도 듣지 않습니다. 기본 앱 화면으로 돌아 가면 오디오가 다시 정상적으로 작동합니다.
작성한 관련 코드를 표시하고 발생 상황과 예상되는 상황을 명확하게 설명하십시오. – jbehrens94
더 많은 코드를 추가했습니다! 감사! –