gpt4 book ai didi

ios - 解码不匹配的数据类型时应用程序崩溃 : how to verify type before decoding with NSCoding?

转载 作者:行者123 更新时间:2023-11-28 12:22:08 26 4
gpt4 key购买 nike

如果您使用错误的 NSCoding 函数解码数据类型,应用程序会崩溃。例如,如果 DoubleKey 实际上表示 double 而不是 decodeInteger 预期的整数,则此行将崩溃:

    let isReallyDouble = aDecoder.decodeInteger(forKey: DoubleKey)

如何在解码前验证数据类型?如果应用程序的版本 1 将某些值编码为整数但版本 5 必须将该变量更改为 double 值,那么这一点很重要。

这是针对 Swift 3 的,其中 decodeObject 不适用于整数和 double 值类型:Swift 3 saving and retrieving custom object from userDefaults

导致崩溃,而不是返回 nil,当数据类型不匹配时,这似乎是一个非常糟糕的设计选择。

最佳答案

Apple 在 2018 年的 WWDC 上发表了一场名为“您可以信任的数据”的演讲。其中一个主题讨论了 NSCodeable 对象的解码。请参阅下面的链接以访问该演讲。强烈推荐。

https://developer.apple.com/videos/play/wwdc2018/222/

关于ios - 解码不匹配的数据类型时应用程序崩溃 : how to verify type before decoding with NSCoding?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44487852/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com