• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 无法在缓存中找到具有标识符 - id - 的可缓存对象

[复制链接]
菜鸟教程小白 发表于 2022-12-12 14:38:11 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在尝试在我的应用中为 Siri 实现 INCreateNoteIntent。 Siri解析了所有需要的内容,她通过confirm和handle intent方法,一切正常,但Siri的最终响应是:

抱歉,应用出现问题

控制台日志中打印的是这样的:

[意图] -[INCache cacheableObjectForIdentifier:] 无法在缓存中找到标识符为 5BCBE5F9-5DD6-4E63-AF5C-F3863BF56ECD 的可缓存对象。

有什么想法吗?



Best Answer-推荐答案


我在使用 INCreateTaskListIntent 时遇到了同样的问题。也许您对 INCreateNoteIntent 也有类似的问题?

事实证明,在您在 handle 方法中创建的最终响应中,您必须为响应分配一个新的 INTaskList 对象,否则它不是有效的成功响应(即,成功的响应必须设置 createdTaskList 字段)。也许你的笔记问题是类似的?

这是修复前后的代码示例:

之前(我不是创建和设置任务列表):

func handle(intent: INCreateTaskListIntent, completion: @escaping (INCreateTaskListIntentResponse) -> Void) {
    guard let title = intent.title else {
        completion(INCreateTaskListIntentResponse(code: .failure, userActivity: nil))
        return
    }

    print("Creating task list called \(title)")
    let response = INCreateTaskListIntentResponse(code: .success, userActivity: nil)
    completion(response)
}

之后(我设置了任务列表):

func handle(intent: INCreateTaskListIntent, completion: @escaping (INCreateTaskListIntentResponse) -> Void) {
    guard let title = intent.title else {
        completion(INCreateTaskListIntentResponse(code: .failure, userActivity: nil))
        return
    }

    print("Creating task list called \(title)")
    let taskList = INTaskList(
        title: title,
        tasks: [],
        groupName: nil,
        createdDateComponents: nil,
        modifiedDateComponents: nil,
        identifier: "superduperlist"
    )
    let response = INCreateTaskListIntentResponse(code: .success, userActivity: nil)
    response.createdTaskList = taskList
    completion(response)
}

关于ios - 无法在缓存中找到具有标识符 - id - 的可缓存对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49152758/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap