Ich habe für eine Weile auf SiriKit gearbeitet, und das Ergebnis meiner Demo wurde nicht von meinem Chef erfüllt. Durch das Lesen aller Apple-Dokumente & habe ich mein Bestes getan, um online zu suchen, kann ich immer noch keinen Weg finden, den Bestätigungsschritt in SendMessageIntent zu überspringen!SiriKit INSendMessageIntent überspringen bestätigen Delegieren
Das ist mein Ziel:
Nach Benutzer Kommentare zu Siri Lösung,
func resolveContent(forSendMessage intent: INSendMessageIntent, with completion: @escaping (INStringResolutionResult) -> Void) {
if let text = intent.content, !text.isEmpty {
if text == "Login with Touch ID" {
completion(INStringResolutionResult.success(with: text))
} else if text == "Change password"{
completion(INStringResolutionResult.success(with: text))
}
completion(INStringResolutionResult.disambiguation(with: ["Login with Touch ID", "Change password"]))
} else {
completion(INStringResolutionResult.disambiguation(with: ["Login with Touch ID", "Change password"]))
}
}
diesen Schritt "bestätigen" überspringen,
func confirm(sendMessage intent: INSendMessageIntent, completion: @escaping (INSendMessageIntentResponse) -> Void) {
// Verify user is authenticated and your app is ready to send a message.
let userActivity = NSUserActivity(activityType: NSStringFromClass(INSendMessageIntent.self))
let response = INSendMessageIntentResponse(code: .success, userActivity: userActivity)
completion(response)
}
Und tun Sie den Griff Delegierten direkt ,
func handle(sendMessage intent: INSendMessageIntent, completion: @escaping (INSendMessageIntentResponse) -> Void) {
// Implement your application logic to send a message here.
let userActivity = NSUserActivity(activityType: NSStringFromClass(INSendMessageIntent.self))
let response = INSendMessageIntentResponse(code: .success, userActivity: userActivity)
completion(response)
}
Hoffe, es gibt jemand kann diese Frage für mich beantworten. Danke vielmals!
Hallo David, danke für die Nachfrage. Ich habe Ihren Weg versucht, um mein Ziel zu erreichen, aber nach dem Löschen bestätigen Funktion bestätigen meine Siri immer noch die Nachricht, die ich sendete. Neben dem Löschen der Bestätigungsfunktion, gibt es einen Teil, den ich verpasst habe? –