따라서 WhatsApp 클라이언트 버전 2.20.31 (2020 년 3 월 릴리스)에 다크 모드 지원이 추가되었습니다. 이것은 iOS 13 전용 기능이며 모양과 느낌에서 완전히 고유 한 구현으로 보입니다. 앱이 iOS SDK 13.0 이상으로 컴파일되고 있다고 가정하는 것이 안전하다고 생각합니다.
iOS 13부터 Apple은 이제 VoIP 알림을받을 때마다 기본 통화 화면을 표시해야합니다. 그렇지 않으면 앱에서 더 이상 VoIP 알림을받지 않습니다. 이전 버전의 iOS에서는 사용자가 웹 클라이언트를 사용하려고 할 때 백그라운드로 백그라운드에서 앱을 자동으로 깨우기 위해 "가짜"들어오는 VoIP 호출을 사용하는 일부 앱 (WhatsApp 포함)이 후자에 직접 연결하여 데이터를 교환 할 수 있습니다. 전화로.
그러나 최신 버전에서 웹 클라이언트는 Apple의 제한 사항에도 불구하고 여전히 이전과 같이 작동하는 것으로 보입니다. 디버거를 사용하면 사용자가 PC에서 웹 클라이언트를 열 때마다 iOS 앱이 깨어나는 것을 관찰 할 수 있지만 통화 화면은 표시되지 않습니다. 이것은 원하는만큼 반복해서 수행 할 수 있습니다.
WhatsApp의 로그는 위에 작성된 내용을 확인하는 것으로 보입니다 .
default 17:09:44.515731+0000 callservicesd Call source <CXXPCCallSource 0x111ecb0a0 identifier=UKFA9XBX6K.net.whatsapp.WhatsApp isConnected=1 processIdentifier=417 isPermittedToUsePublicAPI=1 isPermittedToUsePrivateAPI=0> registered with configuration <CXProviderConfiguration 0x111e9bb40 localizedName=WhatsApp ringtoneSoundURL=(null) iconTemplateImageData=0x0 maximumCallGroups=1 maximumCallsPerCallGroup=1 supportsAudioOnly=1 supportsVideo=1 supportsEmergency=0 supportsVoicemail=0 supportsCurrentPlatform=1 includesCallsInRecents=1 audioSessionID=1151157 supportedHandleTypes=2>
error 18:56:19.949023+0000 callservicesd Killing VoIP app com.xxxxx.xxxxx.xxxxx because it failed to post an incoming call in time.
여기서 무슨 일이 일어나고 있는지 아십니까? WhatsApp은 문서화되지 않은 해결 방법을 사용하거나 일종의 개인 API를 악용합니까?
답변에 미리 감사드립니다.