Example default dialer project

I'm trying to create a dialer app for iOS that will make verified cellular, not voip, calls by registering the calls on my server with an option for passphrase offline verification. This means that I want to build a dialer with a nice UX, so I'm trying to use the new default dialer capability.

I've read https://developer.apple.com/documentation/livecommunicationkit/preparing-your-app-to-be-the-default-dialer-app which links to https://developer.apple.com/documentation/livecommunicationkit/startcellularconversationaction for starting a call, but when I try to actually use it in my app it says "Cannot find type 'TelephonyConversationManager' in scope" and similar, despite importing LiveCommunicationKit.

Is there a default dialer example app & xcode project I can look at for how this should be set up?

As I understood it I should be able to use these from iOS 18.2, and I'm targeting that version in my project. The page for StartCellularConversationAction says Beta 26.0 though, have I misunderstood something? does some flag need to be set in my xcode to be able to use this?

I read that all test devices need to be in the EU, that should not be the problem.

Answered by DTS Engineer in 857044022
As I understood it I should be able to use these from iOS 18.2

I don’t know much about this framework, but the docs for TelephonyConversationManager make it clear that it’s new in iOS 26 beta. That means:

  • You need to build with Xcode 26 beta.
  • Your app will either need to require iOS 26…
  • Or you’ll have to conditionalise this code so that it only runs on iOS 26 (Claude31’s snippet shows one approach for that).

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

it says "Cannot find type 'TelephonyConversationManager' in scope" and similar, despite importing LiveCommunicationKit.

Could you show the code where you call and how you call.

I tested this which compiles:

import LiveCommunicationKit

override func viewDidLoad() {

          super.viewDidLoad()
          if #available(iOS 26.0, *) {
               let manager = TelephonyConversationManager.sharedInstance
          } else {
               // Fallback on earlier versions
          }
     // …
}
As I understood it I should be able to use these from iOS 18.2

I don’t know much about this framework, but the docs for TelephonyConversationManager make it clear that it’s new in iOS 26 beta. That means:

  • You need to build with Xcode 26 beta.
  • Your app will either need to require iOS 26…
  • Or you’ll have to conditionalise this code so that it only runs on iOS 26 (Claude31’s snippet shows one approach for that).

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Example default dialer project
 
 
Q