Handle requests for your app’s services from users using Siri or Maps.

Posts under SiriKit tag

200 Posts

Post

Replies

Boosts

Views

Activity

CarPlay Navigation: supported way to start a Siri reply to an in-app passenger conversation
Hello Apple Developer Support, We are developing Go Mobi, a driver app with CarPlay navigation using CPMapTemplate and an internal driver–passenger messaging service. We want to support this experience within a single iOS app: The driver receives a message associated with the active ride. The driver taps a “Reply” button in the CarPlay interface. Siri handles dictation, review, editing, cancellation and sending to that passenger through Go Mobi’s messaging service. Navigation remains active, and the driver returns to the map after the Siri interaction. The intended destination is Go Mobi’s internal conversation, not SMS or another messaging app. We have separately tested navigation and a Communication app using CPMessageListItem with SiriKit messaging intents. We understand that this does not establish permission to combine the Navigation and Communication CarPlay categories. Could you clarify the supported public API approach? Can an app using the Navigation entitlement and ordinary Siri support, without the CarPlay Communication entitlement, initiate this Siri reply flow from an onscreen button? Is CPMessageComposeBarButton supported on CPMapTemplate in this configuration? Would it route INSendMessageIntent to our own app, and how could we bind it to the existing passenger and conversationIdentifier? Since CPContactTemplate supports Navigation, could CPContactMessageButton provide this functionality? How would it select Go Mobi’s messaging service and conversation rather than relying only on a phone number or email address? If no supported onscreen entry point exists, what single-app approach does Apple recommend? Would invocation through Siri voice commands or the steering-wheel Siri button be supported instead? Please identify the applicable public APIs and entitlement requirements, or confirm which part of the requested experience is unsupported. We are currently testing with synthetic conversations and want to follow the documented CarPlay interaction and safety requirements. Thank you.
0
0
59
3d
App Transfer and Siri Shortcuts Intents backwards compatibility
Hi, I am currently working on an App Transfer from Company A to Company B but can't find any documentation about what happens to existing Siri Shortcuts working via App Extension intents. I have separated the rest of the post in 2 sections: one what summarizes my current understanding and the other with some questions and hypotheses. It would be great to have either someone from Apple to answer that, or someone else share their experience and possibly some documentation that I might have missed. To my understanding, when a new Shortcut is created, it stores the BundleID of the App and of the App Extension to find the application that will execute it afterwards. If I uninstall the App, I can see a message in the Shortcut app that says "This action requires APPNAME but it may not be installed", but I know that after transferring the app the BundleID doesn't change completely, only the team part does. However, it is not possible to test that as this change cannot be done in xCode as far as I know. Another part that seems to play a role here is the info.plist file, but in my situation, there are no entries related to the BundleID. All that being said, I am wondering: Is it possible to perform an app transfer and keep previously created shortcuts working? Is it possible to test this kind of things without having to perform a transfer? I haven't found a way to change the team part of the Bundle ID Is there a place in the documentation that takes care of those things in depth?
1
0
843
5d
Siri Intent Dialog with custom SwiftUIView not responding to buttons with intent
I have created an AppIntent and added it to shortcuts to be able to read by Siri. When I say the phrase, the Siri intent dialog appears just fine. I have added a custom SwiftUI View inside Siri dialog box with 2 buttons with intents. The callback or handling of those buttons is not working when initiated via Siri. It works fine when I initiate it in shortcuts. I tried using the UIButton without the intent action as well but it did not work. Here is the code. static let title: LocalizedStringResource = "My Custom Intent" static var openAppWhenRun: Bool = false @MainActor func perform() async throws -> some ShowsSnippetView & ProvidesDialog { return .result(dialog: "Here are the details of your order"), content: { OrderDetailsView() } } struct OrderDetailsView { var body: some View { HStack { if #available(iOS 17.0, *) { Button(intent: ModifyOrderIntent(), label : { Text("Modify Order") }) Button(intent: CancelOrderIntent(), label : { Text("Cancel Order") }) } } } } struct ModifyOrderIntent: AppIntent { static let title: LocalizedStringResource = "Modify Order" static var openAppWhenRun: Bool = true @MainActor func perform() async throws -> some OpensIntent { // performs the deeplinking to app to a certain page to modify the order } } struct CancelOrderIntent: AppIntent { static let title: LocalizedStringResource = "Cancel Order" static var openAppWhenRun: Bool = true @MainActor func perform() async throws -> some OpensIntent { // performs the deeplinking to app to a certain page to cancel the order } } Button(action: { if let url = URL(string: "myap://open-order") { UIApplication.shared.open(url) } }
1
2
755
Jul ’26
Siri AI broken
Hi everyone, I’m testing the latest iOS 27 beta and I’ve noticed an issue with the new Siri. When I ask very simple questions that should be handled locally or through basic reasoning, Siri consistently responds with: “Uh oh, something went wrong.” For example, asking: “When is the next Friday the 13th?” results in the error message instead of an answer. I’ve reproduced this multiple times and it seems to happen with other straightforward informational queries as well. I’ve already tried restarting the device and checking my network connection, but the issue persists. Has anyone else experienced this behavior with the new Siri in the iOS 27 beta? If so, were you able to find a workaround or identify what’s causing it? Any help or confirmation would be greatly appreciated. Thanks!
9
0
2.2k
Jul ’26
Supporting legacy INAddTasksIntent and the new .reminders.createReminder App Intent schema
We have a list app that implements INAddTasksIntent so users can add items to our app with Siri. We're now working on implementing an App Intent for the .reminders.createReminder schema for iOS 27. Our app still supports iOS 18, so it implements both INAddTasksIntent and the .reminders.createReminder schema. Observed behavior (iOS 27 beta 4): When we say "Siri, add eggs to my grocery list in AppName", Siri routes the request to the legacy INAddTasksIntent handler in our SiriKit extension. Our new CreateReminderIntent is never invoked. I confirmed this with breakpoints and logging in both handlers. The CreateReminderIntent does seem to be set up correctly, because it appears in the Shortcuts app and I can invoke it via AppIntentsTesting. Also, after using the above phrase, I was able to say "Siri, add cookies to my grocery list" and the item got added to my app via the INAddTasksIntent, even though I didn't specify the app name in the request. This also worked with a version of our app that does not contain CreateReminderIntent running on iOS 26.5. Isn't the app name normally required for INAddTasksIntent to be invoked? Questions: Is Siri activating the INAddTasksIntent instead of the new CreateReminderIntent expected behavior? Are users on iOS 27 going to have a worse experience adding items to our app with Siri if we support both INAddTasksIntent and the new CreateReminderIntent? If so, how do you recommend we proceed? Thank you for any guidance you can provide.
2
0
390
Jul ’26
How should apps handle deprecated INStartAudioCallIntentIdentifier and INStartVideoCallIntentIdentifier from Recents?
Hello, I am currently developing call-related features for our app, and I have a question regarding one of the APIs. When the app is launched from the Recents list by selecting a recent call, the activityType of the userActivity is provided as either INStartAudioCallIntentIdentifier or INStartVideoCallIntentIdentifier. However, I understand that these identifiers have been deprecated since iOS 13, and the documentation recommends using INStartCallIntentIdentifier instead. The issue is that when the app is launched from the Recents list, INStartCallIntentIdentifier is never provided. Instead, the deprecated identifiers (INStartAudioCallIntentIdentifier and INStartVideoCallIntentIdentifier) continue to be delivered. I have reviewed the available documentation, but it is not clear how developers are expected to handle this situation. Could you please advise on the recommended approach for supporting this flow? Is it expected that applications continue to handle the deprecated identifiers in this case, or is there another recommended implementation? I would greatly appreciate any guidance you can provide. Thank you.
0
0
607
Jul ’26
CarPlay Communication app not appearing on the CarPlay dashboard — is SiriKit messaging support required for registration?
I have an iOS 17+ app (SwiftUI lifecycle, @UIApplicationDelegateAdaptor) with the granted com.apple.developer.carplay-communication entitlement. It's a voice-message app for family (leave/listen to short audio messages). The app does not appear in Settings → General → CarPlay, nor on the CarPlay Home grid, on a real head unit — across multiple TestFlight builds and full phone reboots. The iPhone app itself launches fine. Verified: The App Store distribution provisioning profile carries com.apple.developer.carplay-communication. The build is signed with that entitlement. Info.plist declares a CPTemplateApplicationSceneSessionRoleApplication scene with UISceneClassName = CPTemplateApplicationScene, a UISceneConfigurationName, and UISceneDelegateClassName pointing to a CPTemplateApplicationSceneDelegate. The delegate synchronously sets a root CPListTemplate in templateApplicationScene(_:didConnect:). My questions: Does a CarPlay Communication app require SiriKit messaging support (INSendMessageIntent, INSearchForMessagesIntent, INSetMessageAttributeIntent, the Siri entitlement, NSSiriUsageDescription, INIntentsSupported) in order to be registered/shown on the CarPlay dashboard? My app currently uses custom CPListTemplate rows with a direct audio recorder and no SiriKit intents. How can I confirm whether the App Store / TestFlight–re-signed build actually carries the carplay-communication entitlement at runtime? For an audio-message app that must never transcribe audio, is INOutgoingMessageType.outgoingMessageAudio the correct approach, and should playback use the SiriKit read flow rather than CPNowPlayingTemplate (which appears to require the Audio entitlement)?
0
0
888
Jul ’26
Siri AI shows raw TypedValueToContentGraphResolutionErrorDomain error 4 to user
I found a UI/error-handling issue involving Siri AI where a raw/internal-looking error code is shown directly to the user instead of a user-friendly message. Environment: Device: iPad Pro 11-inch (M4) iOS/iPadOS version: 27.0 Siri / Apple Intelligence enabled: Yes App involved: Files & PDF Expert UI/context: Siri AI interaction with a document from Files File type: .doc Observed behavior: I asked Siri AI to create a new note inside a document through the app integration. Instead of completing the request or showing a user-friendly failure message, iOS displayed this raw error notification: “From PDF Expert: The operation couldn’t be completed. (TypedValueToContentGraphResolutionErrorDomain error 4.)” Expected behavior: Siri AI should handle this failure gracefully and explain that it could not create a new note in the document, instead of exposing the raw error domain and error code to the user. Screenshot:
0
0
465
Jun ’26
Rich SwiftUI Rendering in the Siri Overlay
For intents that return complex markdown, code snippets, or structured layouts, what are the rendering capabilities and resource constraints of custom SwiftUI views returned via Snippet inside the Siri voice overlay? Are interactive controls (like buttons, copy-to-clipboard, or scroll views) supported inside the Siri-overlay SwiftUI container?
1
0
726
Jun ’26
New Siri Waitlist not activating on iPhone/iPad after 4 days — macOS workaround works but not syncing
Hi, I joined the New Siri waitlist on June 8 (the day of WWDC 2026) and as of June 12, I have still not been granted access on iPhone or iPad — that's 4 days with no activation. I used the Terminal workaround on macOS 27 Golden Gate Beta (EnhancedSiriWaitlist → Enabled = NO), which successfully activated New Siri on my Mac. However, it has not synced to my other devices despite being on the same Apple ID with iCloud Siri sync enabled. Device details: Mac mini (macOS 27 Golden Gate Beta) — New Siri active ✓ iPhone (iOS 27.0 Developer Beta 1) — Joined Waitlist since June 8 iPad (iPadOS 27.0 Developer Beta 1) — Joined Waitlist since June 8 Steps already attempted: Multiple restarts on iPhone and iPad Toggled iCloud Siri sync off/on Toggled Siri off/on multiple times iCloud storage sufficient (200GB plan, 53GB used) 4 days seems far beyond normal rollout time. Is this a known issue? Is there anything on the account side that could be blocking activation? Thank you.
0
0
419
Jun ’26
How to optimize a website for Siri voice search and Safari?
Hello everyone, I am testing how Siri interacts with web pages on iOS devices. When a user utilizes Siri voice commands to search for or open a specific website, Siri usually processes the request and opens the result inside the Safari browser. As a web developer, I want to know if there are any specific HTML meta tags, Schema markup, or SEO best practices that we should implement. This is to ensure Siri can accurately recognize the website's name, brand, and content. What are the simplest ways to make a static web page friendly for Siri voice search? Thanks in advance!
0
0
730
Jun ’26
Are there specific developer integration terms or agreements for Siri / App Intents Framework?
We are integrating the App Intents framework into our iOS app to enable Siri functionality, including intents that display user data (e.g., showing upcoming schedule information) and intents that perform actions on behalf of users (e.g., submitting a time-off request). Our Legal team has asked us to provide any developer-specific integration terms or agreements that govern the engineering use of Siri and the App Intents framework — separate from the user-facing Siri, Dictation & Privacy terms. So far, the only reference we've found to App Intents or Siri in Apple's developer agreements is Section J of the Apple Developer Program License Agreement. We've also reviewed the App Store Review Guidelines, the Privacy HIG, and the Siri HIG. As a point of comparison, Apple Maps has its own specific set of developer integration terms (MapKit / Apple Maps Server API terms). Does anything equivalent exist for Siri and/or the App Intents framework? If Section J of the License Agreement and the relevant HIG sections are the complete set of terms governing developer use of App Intents and Siri, confirmation of that would also be very helpful. Thank you.
0
0
1.5k
May ’26
tvOS SwiftUI - Siri "On-Screen Actions" breaks lazy lists
Hey team, This is a weird one, when Siri + "On-Screen Actions" are enabled in the Apple TV settings (General Settings), LazyVStack experiences severe main-thread hangs and very high CPU usage. The issue only occurs when Siri + On-Screen Actions are enabled in Apple TV device settings (General Settings). Disabling On-Screen Actions completely resolves the issue. The issue has been verified on multiple Apple TV devices, running tvOS 26.3, 26.4 and 26.5. The behavior was not observed in Simulators, only on an actual device. This seems to be caused by some type of accessibility overlap with SwiftUI. Running the below code with "On-Screen Actions" enabled in the Siri settings will demonstrate a complete hang of the CPU at 100% struct TestData { let id = UUID() var title: String } struct TestView: View { @State private var test: [TestData] = [] var body: some View { ScrollView { LazyVStack { ForEach(self.test, id: \.id) { data in Button { } label: { Text(data.title) } } } } .task { var arr: [TestData] = [] for _ in 0..<30000 { let data = TestData(title: "Title") arr.append(data) } self.test = arr } } } Already submited a bug report FB22758928
0
0
597
May ’26
Siri not calling my INExtension
Things I did: created an Intents Extension target added "Supported Intents" to both my main app target and the intent extension, with "INAddTasksIntent" and "INCreateNoteIntent" created the AppIntentVocabulary in my main app target created the handlers in the code in the Intents Extension target class AddTaskIntentHandler: INExtension, INAddTasksIntentHandling { func resolveTaskTitles(for intent: INAddTasksIntent) async -> [INSpeakableStringResolutionResult] { if let taskTitles = intent.taskTitles { return taskTitles.map { INSpeakableStringResolutionResult.success(with: $0) } } else { return [INSpeakableStringResolutionResult.needsValue()] } } func handle(intent: INAddTasksIntent) async -> INAddTasksIntentResponse { // my code to handle this... let response = INAddTasksIntentResponse(code: .success, userActivity: nil) response.addedTasks = tasksCreated.map { INTask( title: INSpeakableString(spokenPhrase: $0.name), status: .notCompleted, taskType: .completable, spatialEventTrigger: nil, temporalEventTrigger: intent.temporalEventTrigger, createdDateComponents: DateHelper.localCalendar().dateComponents([.year, .month, .day, .minute, .hour], from: Date.now), modifiedDateComponents: nil, identifier: $0.id ) } return response } } class AddItemIntentHandler: INExtension, INCreateNoteIntentHandling { func resolveTitle(for intent: INCreateNoteIntent) async -> INSpeakableStringResolutionResult { if let title = intent.title { return INSpeakableStringResolutionResult.success(with: title) } else { return INSpeakableStringResolutionResult.needsValue() } } func resolveGroupName(for intent: INCreateNoteIntent) async -> INSpeakableStringResolutionResult { if let groupName = intent.groupName { return INSpeakableStringResolutionResult.success(with: groupName) } else { return INSpeakableStringResolutionResult.needsValue() } } func handle(intent: INCreateNoteIntent) async -> INCreateNoteIntentResponse { do { // my code for handling this... let response = INCreateNoteIntentResponse(code: .success, userActivity: nil) response.createdNote = INNote( title: INSpeakableString(spokenPhrase: itemName), contents: itemNote.map { [INTextNoteContent(text: $0)] } ?? [], groupName: INSpeakableString(spokenPhrase: list.name), createdDateComponents: DateHelper.localCalendar().dateComponents([.day, .month, .year, .hour, .minute], from: Date.now), modifiedDateComponents: nil, identifier: newItem.id ) return response } catch { return INCreateNoteIntentResponse(code: .failure, userActivity: nil) } } } uninstalled my app restarted my physical device and simulator Yet, when I say "Remind me to buy dog food in Index" (Index is the name of my app), as stated in the examples of INAddTasksIntent, Siri proceeds to say that a list named "Index" doesn't exist in apple Reminders app, instead of processing the request in my app. Am I missing something?
3
0
891
Apr ’26
SiriKit: INPlayMediaIntent with a targeted speaker
I've got a streaming Radio app that loads an HLS stream into an AVAudioPlayer. I've set up an Intents extension that notifies SiriKit that my app must handle the INPlayMediaIntent in app, and, I'm able to successfully initiate the stream playing from my phone using the string "Play ". My intent handler in app looks like this: completionHandler(INPlayMediaIntentResponse(code: .success, userActivity: nil)) DispatchQueue.main.async { AudioPlayerService.shared.play() } The Audio Player service, in its init, does the following: try AVAudioSession.sharedInstance().setCategory( .playback, mode: .default, policy: .longFormAudio ) Additionally, in my Info.plist, I have the AirPlay optimization policy set to Long Form Audio. Having said all that, when I try to route my app to play "on a given HomePod speaker" ("play on ") the speaker routing instructions are never followed. I've looked and not been able to find where I might be able to instruct my app to follow the correct path here. I was assuming I could not trigger this behavior manually, as I believe I don't really have any control over AirPlay routing. Is there any guidance for working with SiriKit to do the right thing with regards to audio routing?
0
0
1.7k
Feb ’26
CarPlay Navigation: supported way to start a Siri reply to an in-app passenger conversation
Hello Apple Developer Support, We are developing Go Mobi, a driver app with CarPlay navigation using CPMapTemplate and an internal driver–passenger messaging service. We want to support this experience within a single iOS app: The driver receives a message associated with the active ride. The driver taps a “Reply” button in the CarPlay interface. Siri handles dictation, review, editing, cancellation and sending to that passenger through Go Mobi’s messaging service. Navigation remains active, and the driver returns to the map after the Siri interaction. The intended destination is Go Mobi’s internal conversation, not SMS or another messaging app. We have separately tested navigation and a Communication app using CPMessageListItem with SiriKit messaging intents. We understand that this does not establish permission to combine the Navigation and Communication CarPlay categories. Could you clarify the supported public API approach? Can an app using the Navigation entitlement and ordinary Siri support, without the CarPlay Communication entitlement, initiate this Siri reply flow from an onscreen button? Is CPMessageComposeBarButton supported on CPMapTemplate in this configuration? Would it route INSendMessageIntent to our own app, and how could we bind it to the existing passenger and conversationIdentifier? Since CPContactTemplate supports Navigation, could CPContactMessageButton provide this functionality? How would it select Go Mobi’s messaging service and conversation rather than relying only on a phone number or email address? If no supported onscreen entry point exists, what single-app approach does Apple recommend? Would invocation through Siri voice commands or the steering-wheel Siri button be supported instead? Please identify the applicable public APIs and entitlement requirements, or confirm which part of the requested experience is unsupported. We are currently testing with synthetic conversations and want to follow the documented CarPlay interaction and safety requirements. Thank you.
Replies
0
Boosts
0
Views
59
Activity
3d
App Transfer and Siri Shortcuts Intents backwards compatibility
Hi, I am currently working on an App Transfer from Company A to Company B but can't find any documentation about what happens to existing Siri Shortcuts working via App Extension intents. I have separated the rest of the post in 2 sections: one what summarizes my current understanding and the other with some questions and hypotheses. It would be great to have either someone from Apple to answer that, or someone else share their experience and possibly some documentation that I might have missed. To my understanding, when a new Shortcut is created, it stores the BundleID of the App and of the App Extension to find the application that will execute it afterwards. If I uninstall the App, I can see a message in the Shortcut app that says "This action requires APPNAME but it may not be installed", but I know that after transferring the app the BundleID doesn't change completely, only the team part does. However, it is not possible to test that as this change cannot be done in xCode as far as I know. Another part that seems to play a role here is the info.plist file, but in my situation, there are no entries related to the BundleID. All that being said, I am wondering: Is it possible to perform an app transfer and keep previously created shortcuts working? Is it possible to test this kind of things without having to perform a transfer? I haven't found a way to change the team part of the Bundle ID Is there a place in the documentation that takes care of those things in depth?
Replies
1
Boosts
0
Views
843
Activity
5d
Siri Intent Dialog with custom SwiftUIView not responding to buttons with intent
I have created an AppIntent and added it to shortcuts to be able to read by Siri. When I say the phrase, the Siri intent dialog appears just fine. I have added a custom SwiftUI View inside Siri dialog box with 2 buttons with intents. The callback or handling of those buttons is not working when initiated via Siri. It works fine when I initiate it in shortcuts. I tried using the UIButton without the intent action as well but it did not work. Here is the code. static let title: LocalizedStringResource = "My Custom Intent" static var openAppWhenRun: Bool = false @MainActor func perform() async throws -> some ShowsSnippetView & ProvidesDialog { return .result(dialog: "Here are the details of your order"), content: { OrderDetailsView() } } struct OrderDetailsView { var body: some View { HStack { if #available(iOS 17.0, *) { Button(intent: ModifyOrderIntent(), label : { Text("Modify Order") }) Button(intent: CancelOrderIntent(), label : { Text("Cancel Order") }) } } } } struct ModifyOrderIntent: AppIntent { static let title: LocalizedStringResource = "Modify Order" static var openAppWhenRun: Bool = true @MainActor func perform() async throws -> some OpensIntent { // performs the deeplinking to app to a certain page to modify the order } } struct CancelOrderIntent: AppIntent { static let title: LocalizedStringResource = "Cancel Order" static var openAppWhenRun: Bool = true @MainActor func perform() async throws -> some OpensIntent { // performs the deeplinking to app to a certain page to cancel the order } } Button(action: { if let url = URL(string: "myap://open-order") { UIApplication.shared.open(url) } }
Replies
1
Boosts
2
Views
755
Activity
Jul ’26
Siri AI broken
Hi everyone, I’m testing the latest iOS 27 beta and I’ve noticed an issue with the new Siri. When I ask very simple questions that should be handled locally or through basic reasoning, Siri consistently responds with: “Uh oh, something went wrong.” For example, asking: “When is the next Friday the 13th?” results in the error message instead of an answer. I’ve reproduced this multiple times and it seems to happen with other straightforward informational queries as well. I’ve already tried restarting the device and checking my network connection, but the issue persists. Has anyone else experienced this behavior with the new Siri in the iOS 27 beta? If so, were you able to find a workaround or identify what’s causing it? Any help or confirmation would be greatly appreciated. Thanks!
Replies
9
Boosts
0
Views
2.2k
Activity
Jul ’26
Supporting legacy INAddTasksIntent and the new .reminders.createReminder App Intent schema
We have a list app that implements INAddTasksIntent so users can add items to our app with Siri. We're now working on implementing an App Intent for the .reminders.createReminder schema for iOS 27. Our app still supports iOS 18, so it implements both INAddTasksIntent and the .reminders.createReminder schema. Observed behavior (iOS 27 beta 4): When we say "Siri, add eggs to my grocery list in AppName", Siri routes the request to the legacy INAddTasksIntent handler in our SiriKit extension. Our new CreateReminderIntent is never invoked. I confirmed this with breakpoints and logging in both handlers. The CreateReminderIntent does seem to be set up correctly, because it appears in the Shortcuts app and I can invoke it via AppIntentsTesting. Also, after using the above phrase, I was able to say "Siri, add cookies to my grocery list" and the item got added to my app via the INAddTasksIntent, even though I didn't specify the app name in the request. This also worked with a version of our app that does not contain CreateReminderIntent running on iOS 26.5. Isn't the app name normally required for INAddTasksIntent to be invoked? Questions: Is Siri activating the INAddTasksIntent instead of the new CreateReminderIntent expected behavior? Are users on iOS 27 going to have a worse experience adding items to our app with Siri if we support both INAddTasksIntent and the new CreateReminderIntent? If so, how do you recommend we proceed? Thank you for any guidance you can provide.
Replies
2
Boosts
0
Views
390
Activity
Jul ’26
How should apps handle deprecated INStartAudioCallIntentIdentifier and INStartVideoCallIntentIdentifier from Recents?
Hello, I am currently developing call-related features for our app, and I have a question regarding one of the APIs. When the app is launched from the Recents list by selecting a recent call, the activityType of the userActivity is provided as either INStartAudioCallIntentIdentifier or INStartVideoCallIntentIdentifier. However, I understand that these identifiers have been deprecated since iOS 13, and the documentation recommends using INStartCallIntentIdentifier instead. The issue is that when the app is launched from the Recents list, INStartCallIntentIdentifier is never provided. Instead, the deprecated identifiers (INStartAudioCallIntentIdentifier and INStartVideoCallIntentIdentifier) continue to be delivered. I have reviewed the available documentation, but it is not clear how developers are expected to handle this situation. Could you please advise on the recommended approach for supporting this flow? Is it expected that applications continue to handle the deprecated identifiers in this case, or is there another recommended implementation? I would greatly appreciate any guidance you can provide. Thank you.
Replies
0
Boosts
0
Views
607
Activity
Jul ’26
CarPlay Communication app not appearing on the CarPlay dashboard — is SiriKit messaging support required for registration?
I have an iOS 17+ app (SwiftUI lifecycle, @UIApplicationDelegateAdaptor) with the granted com.apple.developer.carplay-communication entitlement. It's a voice-message app for family (leave/listen to short audio messages). The app does not appear in Settings → General → CarPlay, nor on the CarPlay Home grid, on a real head unit — across multiple TestFlight builds and full phone reboots. The iPhone app itself launches fine. Verified: The App Store distribution provisioning profile carries com.apple.developer.carplay-communication. The build is signed with that entitlement. Info.plist declares a CPTemplateApplicationSceneSessionRoleApplication scene with UISceneClassName = CPTemplateApplicationScene, a UISceneConfigurationName, and UISceneDelegateClassName pointing to a CPTemplateApplicationSceneDelegate. The delegate synchronously sets a root CPListTemplate in templateApplicationScene(_:didConnect:). My questions: Does a CarPlay Communication app require SiriKit messaging support (INSendMessageIntent, INSearchForMessagesIntent, INSetMessageAttributeIntent, the Siri entitlement, NSSiriUsageDescription, INIntentsSupported) in order to be registered/shown on the CarPlay dashboard? My app currently uses custom CPListTemplate rows with a direct audio recorder and no SiriKit intents. How can I confirm whether the App Store / TestFlight–re-signed build actually carries the carplay-communication entitlement at runtime? For an audio-message app that must never transcribe audio, is INOutgoingMessageType.outgoingMessageAudio the correct approach, and should playback use the SiriKit read flow rather than CPNowPlayingTemplate (which appears to require the Audio entitlement)?
Replies
0
Boosts
0
Views
888
Activity
Jul ’26
Siri AI shows raw TypedValueToContentGraphResolutionErrorDomain error 4 to user
I found a UI/error-handling issue involving Siri AI where a raw/internal-looking error code is shown directly to the user instead of a user-friendly message. Environment: Device: iPad Pro 11-inch (M4) iOS/iPadOS version: 27.0 Siri / Apple Intelligence enabled: Yes App involved: Files & PDF Expert UI/context: Siri AI interaction with a document from Files File type: .doc Observed behavior: I asked Siri AI to create a new note inside a document through the app integration. Instead of completing the request or showing a user-friendly failure message, iOS displayed this raw error notification: “From PDF Expert: The operation couldn’t be completed. (TypedValueToContentGraphResolutionErrorDomain error 4.)” Expected behavior: Siri AI should handle this failure gracefully and explain that it could not create a new note in the document, instead of exposing the raw error domain and error code to the user. Screenshot:
Replies
0
Boosts
0
Views
465
Activity
Jun ’26
Testing Siri on iPad if we dont have extra iPhone?
What should we know about testing the new Siri and beta software on iPad vs iPhone if we do not have a space 17 PRO device for beta software testing? And can the new Siri AI be activated on an iPad? Any requirements? Any other testing options? Thank you.
Replies
1
Boosts
0
Views
533
Activity
Jun ’26
Still on Waitlist since Day 1
I am still on the waitlist since Day 1… Such a poor preparedness and leadership by Apple… That’s it… My primary Sim is going back to Samsung…
Replies
0
Boosts
1
Views
459
Activity
Jun ’26
Rich SwiftUI Rendering in the Siri Overlay
For intents that return complex markdown, code snippets, or structured layouts, what are the rendering capabilities and resource constraints of custom SwiftUI views returned via Snippet inside the Siri voice overlay? Are interactive controls (like buttons, copy-to-clipboard, or scroll views) supported inside the Siri-overlay SwiftUI container?
Replies
1
Boosts
0
Views
726
Activity
Jun ’26
Do we need to migrate SiriKit INIntent to AppIntent for Siri AI?
Can the new Siri correctly handle SiriKit INIntent? My app uses INIntent like INSendMessageIntent. It is used not only for Siri action but also used Communication notifications and CarPlay and more OS features. Is any migration required?
Replies
1
Boosts
0
Views
284
Activity
Jun ’26
New Siri Waitlist not activating on iPhone/iPad after 4 days — macOS workaround works but not syncing
Hi, I joined the New Siri waitlist on June 8 (the day of WWDC 2026) and as of June 12, I have still not been granted access on iPhone or iPad — that's 4 days with no activation. I used the Terminal workaround on macOS 27 Golden Gate Beta (EnhancedSiriWaitlist → Enabled = NO), which successfully activated New Siri on my Mac. However, it has not synced to my other devices despite being on the same Apple ID with iCloud Siri sync enabled. Device details: Mac mini (macOS 27 Golden Gate Beta) — New Siri active ✓ iPhone (iOS 27.0 Developer Beta 1) — Joined Waitlist since June 8 iPad (iPadOS 27.0 Developer Beta 1) — Joined Waitlist since June 8 Steps already attempted: Multiple restarts on iPhone and iPad Toggled iCloud Siri sync off/on Toggled Siri off/on multiple times iCloud storage sufficient (200GB plan, 53GB used) 4 days seems far beyond normal rollout time. Is this a known issue? Is there anything on the account side that could be blocking activation? Thank you.
Replies
0
Boosts
0
Views
419
Activity
Jun ’26
Guardrails for Siri + App Intents"
With Siri AI and App Intents, we can surface content from apps. Can we add guardrails or configure what Siri can or cannot say when dictating content?
Replies
1
Boosts
1
Views
879
Activity
Jun ’26
Dynamic Runtime App Shortcuts
Can App Shortcuts (and their trigger phrases) be generated or translated dynamically at runtime based on user-defined configurations (e.g. download-on-demand language models or custom voice aliases), or must all voice shortcuts and translations be statically declared in the application's compiled String Catalogs (.xcstrings)?
Replies
0
Boosts
2
Views
475
Activity
Jun ’26
How to optimize a website for Siri voice search and Safari?
Hello everyone, I am testing how Siri interacts with web pages on iOS devices. When a user utilizes Siri voice commands to search for or open a specific website, Siri usually processes the request and opens the result inside the Safari browser. As a web developer, I want to know if there are any specific HTML meta tags, Schema markup, or SEO best practices that we should implement. This is to ensure Siri can accurately recognize the website's name, brand, and content. What are the simplest ways to make a static web page friendly for Siri voice search? Thanks in advance!
Replies
0
Boosts
0
Views
730
Activity
Jun ’26
Are there specific developer integration terms or agreements for Siri / App Intents Framework?
We are integrating the App Intents framework into our iOS app to enable Siri functionality, including intents that display user data (e.g., showing upcoming schedule information) and intents that perform actions on behalf of users (e.g., submitting a time-off request). Our Legal team has asked us to provide any developer-specific integration terms or agreements that govern the engineering use of Siri and the App Intents framework — separate from the user-facing Siri, Dictation & Privacy terms. So far, the only reference we've found to App Intents or Siri in Apple's developer agreements is Section J of the Apple Developer Program License Agreement. We've also reviewed the App Store Review Guidelines, the Privacy HIG, and the Siri HIG. As a point of comparison, Apple Maps has its own specific set of developer integration terms (MapKit / Apple Maps Server API terms). Does anything equivalent exist for Siri and/or the App Intents framework? If Section J of the License Agreement and the relevant HIG sections are the complete set of terms governing developer use of App Intents and Siri, confirmation of that would also be very helpful. Thank you.
Replies
0
Boosts
0
Views
1.5k
Activity
May ’26
tvOS SwiftUI - Siri "On-Screen Actions" breaks lazy lists
Hey team, This is a weird one, when Siri + "On-Screen Actions" are enabled in the Apple TV settings (General Settings), LazyVStack experiences severe main-thread hangs and very high CPU usage. The issue only occurs when Siri + On-Screen Actions are enabled in Apple TV device settings (General Settings). Disabling On-Screen Actions completely resolves the issue. The issue has been verified on multiple Apple TV devices, running tvOS 26.3, 26.4 and 26.5. The behavior was not observed in Simulators, only on an actual device. This seems to be caused by some type of accessibility overlap with SwiftUI. Running the below code with "On-Screen Actions" enabled in the Siri settings will demonstrate a complete hang of the CPU at 100% struct TestData { let id = UUID() var title: String } struct TestView: View { @State private var test: [TestData] = [] var body: some View { ScrollView { LazyVStack { ForEach(self.test, id: \.id) { data in Button { } label: { Text(data.title) } } } } .task { var arr: [TestData] = [] for _ in 0..<30000 { let data = TestData(title: "Title") arr.append(data) } self.test = arr } } } Already submited a bug report FB22758928
Replies
0
Boosts
0
Views
597
Activity
May ’26
Siri not calling my INExtension
Things I did: created an Intents Extension target added "Supported Intents" to both my main app target and the intent extension, with "INAddTasksIntent" and "INCreateNoteIntent" created the AppIntentVocabulary in my main app target created the handlers in the code in the Intents Extension target class AddTaskIntentHandler: INExtension, INAddTasksIntentHandling { func resolveTaskTitles(for intent: INAddTasksIntent) async -> [INSpeakableStringResolutionResult] { if let taskTitles = intent.taskTitles { return taskTitles.map { INSpeakableStringResolutionResult.success(with: $0) } } else { return [INSpeakableStringResolutionResult.needsValue()] } } func handle(intent: INAddTasksIntent) async -> INAddTasksIntentResponse { // my code to handle this... let response = INAddTasksIntentResponse(code: .success, userActivity: nil) response.addedTasks = tasksCreated.map { INTask( title: INSpeakableString(spokenPhrase: $0.name), status: .notCompleted, taskType: .completable, spatialEventTrigger: nil, temporalEventTrigger: intent.temporalEventTrigger, createdDateComponents: DateHelper.localCalendar().dateComponents([.year, .month, .day, .minute, .hour], from: Date.now), modifiedDateComponents: nil, identifier: $0.id ) } return response } } class AddItemIntentHandler: INExtension, INCreateNoteIntentHandling { func resolveTitle(for intent: INCreateNoteIntent) async -> INSpeakableStringResolutionResult { if let title = intent.title { return INSpeakableStringResolutionResult.success(with: title) } else { return INSpeakableStringResolutionResult.needsValue() } } func resolveGroupName(for intent: INCreateNoteIntent) async -> INSpeakableStringResolutionResult { if let groupName = intent.groupName { return INSpeakableStringResolutionResult.success(with: groupName) } else { return INSpeakableStringResolutionResult.needsValue() } } func handle(intent: INCreateNoteIntent) async -> INCreateNoteIntentResponse { do { // my code for handling this... let response = INCreateNoteIntentResponse(code: .success, userActivity: nil) response.createdNote = INNote( title: INSpeakableString(spokenPhrase: itemName), contents: itemNote.map { [INTextNoteContent(text: $0)] } ?? [], groupName: INSpeakableString(spokenPhrase: list.name), createdDateComponents: DateHelper.localCalendar().dateComponents([.day, .month, .year, .hour, .minute], from: Date.now), modifiedDateComponents: nil, identifier: newItem.id ) return response } catch { return INCreateNoteIntentResponse(code: .failure, userActivity: nil) } } } uninstalled my app restarted my physical device and simulator Yet, when I say "Remind me to buy dog food in Index" (Index is the name of my app), as stated in the examples of INAddTasksIntent, Siri proceeds to say that a list named "Index" doesn't exist in apple Reminders app, instead of processing the request in my app. Am I missing something?
Replies
3
Boosts
0
Views
891
Activity
Apr ’26
SiriKit: INPlayMediaIntent with a targeted speaker
I've got a streaming Radio app that loads an HLS stream into an AVAudioPlayer. I've set up an Intents extension that notifies SiriKit that my app must handle the INPlayMediaIntent in app, and, I'm able to successfully initiate the stream playing from my phone using the string "Play ". My intent handler in app looks like this: completionHandler(INPlayMediaIntentResponse(code: .success, userActivity: nil)) DispatchQueue.main.async { AudioPlayerService.shared.play() } The Audio Player service, in its init, does the following: try AVAudioSession.sharedInstance().setCategory( .playback, mode: .default, policy: .longFormAudio ) Additionally, in my Info.plist, I have the AirPlay optimization policy set to Long Form Audio. Having said all that, when I try to route my app to play "on a given HomePod speaker" ("play on ") the speaker routing instructions are never followed. I've looked and not been able to find where I might be able to instruct my app to follow the correct path here. I was assuming I could not trigger this behavior manually, as I believe I don't really have any control over AirPlay routing. Is there any guidance for working with SiriKit to do the right thing with regards to audio routing?
Replies
0
Boosts
0
Views
1.7k
Activity
Feb ’26