iOS has a built-in feature called CallKit that the app works with by default and handles this well across all iOS devices. Users can accept native calls while on a SIP call or vice versa and even switch between them with no issues.
Unfortunately, there is no perfect solution for this on android. The closest thing is call integration:
When call integration is set, this is handled by the system and though the exact behavior can vary some by device, it generally means users can answer both calls and switch back and forth between them (just like with CallKit on iOS).
The problem is with android fragmentation, it does not work well on all devices and though we are always working on improving this, there will always be device-specific issues (some we can fix, but not all).
So this is best left configurable by users so they can change the settings if they are having issues.
The options are:
Default (available on Android 9 and up) - this one is generally the most reliable option. It uses the app's dialer for calls. But it can have device-specific issues.
System (available on Android 9 and up) - this one means the app will use the native dialer interface. But this option is more prone to issues than the default option
Disabled (this is the only option for android 8 or lower and 9 and up can set it fi the other options are causing issues on their device) - call integration is not used. In this case, there are some additional settings we offer. But though those can make the experience a little better, it will never be perfect. In this case, they need to decide which call they want to continue with and get rid of the other one.
The additional options when call integration is disabled are:
On GSM call - defines the behavior of the app if a GSM call comes in while on a SIP call.
Put-call on hold -default
Hold with music
On SIP call - defines the behavior of the app if SIP call comes in when on GSM call
Do nothing - default
Handle GSM call when (defines when we do the option selected for on gsm call
Call integration can be set in the preferences and when disabled, the extra settings for disabled will be in preferences under controls.