在 Swift 中检索 Branch deep link 参数时出现问题

Issues retrieving Branch deep link parameters in Swift

我在使用这条线时遇到了问题:

let isBranchLinkKey = "+clicked_branch_link"
guard let didClickBranchLink = params[isBranchLinkKey] as? Int else { return }

didClickBranchLink 为 nil,即使在调试器中有参数。

下面是我的调试器的截图:

.

如编辑后的屏幕截图中所述,paramBranchLink 具有 boolean 值(请注意左侧调试器中的 __NSCFBoolean),但您正试图转换为 Int 在警卫声明中。由于在 swift 中两者是两种不同的类型,因此 guard 语句将失败。您应该更改保护声明以将其作为 Bool 值。

guard let didClickBranchLink = params[isBranchLinkKey] as? Bool else { return }

这应该在 didClickBranchLink 中给出一个 boolean 值,您可以在后面的代码部分中使用它。