내용으로 건너뛰기

iOS

GitHub

iOS 동작 방식

iOS 동작 방식

iOS에서 플러그인은 CallKit에 incoming call을 보고 시스템 incoming-call sheet와 표준화된 call 액션을 제공합니다. native incoming-call UI를 직접 구축하지 않아도 됩니다.

requestPermissions() iOS에서는 CallKit 자체가 runtime permission dialog를 요구하지 않기 때문에 즉시 해결됩니다.

기본 예제

기본 예제
import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.showIncomingCall({
callId: 'call-42',
callerName: 'Ada Lovelace',
handle: '+1 555 010 020',
ios: {
handleType: 'phoneNumber',
supportsHolding: true,
supportsDTMF: false,
},
});

사용하여 CallKit이 handle을 어떻게 형식화하는지 제어합니다: ios.handleType 앱 고유 식별자

  • generic for
  • phoneNumber 실제 전화번호
  • emailAddress 이메일 기반 식별자

배경 incoming calls

배경 incoming calls

이 플러그인은 PushKit 또는 APNs를 자동으로 등록하지 않습니다.

iOS에서 실제 배경 또는 종료된 상태의 링을 얻으려면, 호스트 앱은 native Apple push 설정이 transport 전략에 맞아야 합니다:

  1. Apple push 전달을 사용하는 transport가 있는 경우 Push Notifications를 활성화하세요.
  2. VoIP push flow를 사용하는 앱의 경우 Voice over IP 배경 모드를 활성화하세요.
  3. incoming-call 이벤트를 앱에 전달하고 Capacitor bridge가 사용 가능할 때 이 플러그인을 호출하세요.

링 이벤트가 JavaScript에서만 존재할 경우, 앱이 이미 foreground에서 실행 중일 때 최적의 경험을 얻을 수 있습니다.

마이크 및 카메라 권한

마이크 및 카메라 권한

CallKit은 미디어 SDK을 대체하지 않습니다. 실제 통화 세션에서 마이크나 카메라 접근이 사용되는 경우, 사용 설명이 여전히 앱에 속합니다:

<key>NSMicrophoneUsageDescription</key>
<string>This app uses the microphone for calls.</string>
<key>NSCameraUsageDescription</key>
<string>This app uses the camera for video calls.</string>

실제 통화 흐름에서만 필요한 키만 추가하세요.

앱层에서 이 책임을 유지하세요

앱层에서 이 책임을 유지하세요
  • PushKit 및 APNs 등록
  • 인증 및 토큰 갱신
  • 실제 회의실 또는 VoIP 세션에 참가하기 전에 callAccepted
  • 플러그인이 방출할 때远程 통화 상태를 종료하거나 일치시키기 callDeclined, callEnded또는 callTimedOut

iOS에서 계속하세요

iOS에서 계속하세요

iOS를 사용하여 네이티브 플러그인 작업을 계획하고 있나요? iOS 네이티브 플러그인 작업을 계획하고 있으시다면 Using @capgo/capacitor-incoming-call-kit Using @capgo/capacitor-incoming-call-kit Capgo Plugin Directory Capgo Plugin Directory Capacitor Plugins by Capgo Capacitor Plugins by Capgo 플러그인을 추가하거나 업데이트 플러그인을 추가하거나 업데이트 Ionic Enterprise Plugin Alternatives 이오닉 엔터프라이즈 플러그인 대체 제품 워크플로우에 대한 것입니다.