1

我正在获取与我的应用相关的 voiceShortcurts。下面的函数两次进入完成块。它首先返回 true,然后返回 false,哪个 true 是正确的。为什么它两次进入完成块?

 public static func updateVoiceShortcuts(completion: @escaping ((_ haveShortcutAlready: Bool) -> Void)) {
        INVoiceShortcutCenter.shared.getAllVoiceShortcuts { (voiceShortcutsFromCenter, error) in
            if let voiceShortcutsFromCenter = voiceShortcutsFromCenter {
                self.voiceShortcuts = voiceShortcutsFromCenter
                    completion(true)
            } else {
                if let error = error as NSError? {
                    print(error)
                }
                    completion(false)
            }
        }
    }
4

0 回答 0