Обработка намерения «Добавить задачи», комплект Siri

Хотя я считаю, что следую правильным инструкциям для функции дескриптора обработчика намерений; все завершается так, как должно (данные сохраняются), я отправляю код успеха обратно из функции дескриптора, и все же, когда запрос завершен, Siri всегда отображает «Продолжить в приложении». Кто-нибудь сталкивался с подобной проблемой и знает решение? Вот код, который я реализую перед выходом из обработчика, написанный на Swift:

let userActivity = NSUserActivity(activityType: NSStringFromClass(INAddTasksIntent.self))
    let response = INAddTasksIntentResponse(code: .success, userActivity: userActivity)
    completion(response) 

person DanielInTheDen    schedule 17.07.2017    source источник
comment
Я должен уточнить, что отображает Siri. Извините, вам нужно продолжить работу в приложении. не просто Продолжить в приложении   -  person DanielInTheDen    schedule 17.07.2017
comment
Я также должен добавить, что то же самое происходит со мной, используя тот же код в обработчике создания заметки.   -  person DanielInTheDen    schedule 17.07.2017
comment
Попробуйте удалить приложение из симулятора и переустановить его.   -  person paper1111    schedule 17.07.2017
comment
Пробовал, не повезло к сожалению   -  person DanielInTheDen    schedule 17.07.2017
comment
Становится еще более странным, когда я пробовал почти такой же код в обработчике для домена платежей, и он работал нормально. Вам вряд ли придется возвращаться в приложение независимо от домена заметок и списков ??   -  person DanielInTheDen    schedule 17.07.2017


Ответы (1)


Для тех, кого это касается, проблема решается путем прикрепления списка целевых задач и задач, которые необходимо добавить к ответу, следующим образом:

    let responseCode = INAddTasksIntentResponseCode.success

    let response = INAddTasksIntentResponse(code: responseCode,
                                               userActivity: nil)

    var addedTasks:[INTask] = []
    for title in intent.taskTitles!{
        let newTask = INTask(title: title, status: .notCompleted, taskType: .completable, spatialEventTrigger: nil, temporalEventTrigger: nil, createdDateComponents: nil, modifiedDateComponents: nil, identifier: nil)

        addedTasks.append(newTask)
    }

    response.modifiedTaskList = intent.targetTaskList!
    response.addedTasks = addedTasks
    completion(response)
person DanielInTheDen    schedule 18.07.2017