We're integrating the CarPlay framework in our navigation app, and so far, we absolutely love it!
We are currently using a CPSearchTemplate so a user can search for a destinations to navigate to.
The Apple Maps CarPlay app show the user a Siri screen first, where it is possible to use voice to search for destinations (and it's possible to use a keyboard by pressing the keyboard icon). We would love this integration in our app too!
Is this currently possible?
We already support the Speech framework for recognizing Speech and are using that to search for destinations. We found the CPVoiceControlTemplate in documentation, which suggests it is possible to use the Siri/Speech framework:
CarPlay navigation apps must show the voice control template during audio input.
However, when we create this template (with or without "voiceControlStates") and push it, the app receives a SIGABRT without clear error messages (crashes in the main.swift). The crash happens exactly on/after a push.
interfaceController?.pushTemplate(voiceControlTemplate, animated: true)
libc++abi.dylib: terminating with uncaught exception of type NSException
Can anyone shine a light on this for us? 💪