AndaluZ
AndaluZ

Reputation: 1536

When to use native CallKit UI and when your own custom telephone UI?

I integrated CallKit successfully in my app, but I'm kind of confused how to use it correctly. When the phone is in locked state, I get the native Call UI like this:

Call UI in locked state

When my app is in background and it receives an incoming call, the following interface I get:

enter image description here

By the way, after I accept the call, it opens my app and brings it to the foreground. While I'm expecting the native Call UI (CallKit) to stay in the foreground when accepted the call.

However, if my app is brought to the foreground by CallKit, the native Call UI is not gone, but stays in memory. When I double press on the home button to get a list of opened apps, I can see the native Call UI as follows:

enter image description here

So the native Call UI is still there and I can get it to the foreground and control the call. So, what happens is, I get 2 UI's, one is the native Call UI and the other is my own app.

Also, the examples and demos I found about CallKit is confusing, because I only see native Call UI and no custom VoIP app UI. So what's the deal with Call UI? When should it be displayed and when should a custom app UI be displayed?

Upvotes: 1

Views: 995

Answers (1)

Marco
Marco

Reputation: 1686

I know that it seems a bit confusing at first, but it's just the way it works. You don't have control on whether to show the system UI or your custom UI.

While the phone is ringing only the system UI is shown. As soon as you answer, if the phone is locked then the system UI is shown; if the phone is unlocked then your app will become active and your custom UI is shown.

Upvotes: 3

Related Questions