gpt4 book ai didi

ios - 使用 Xcode 11 与 Xcode 10 编译时,NSData 描述和 NSString stringWithFormat 具有不同的返回结果

转载 作者:行者123 更新时间:2023-11-28 23:30:15 26 4
gpt4 key购买 nike

我见过的所有使用推送的示例都使用 [NSData 描述] 来获取推送 token 以便发送到服务器。但是,当使用 XCode 11 构建应用程序时,其结果与使用 Xcode 10 构建时不同,[NSString stringWithFormat] 类似。

例子:

NSData* theToken = ...
....
NSString* stringWithFormat = [NSString stringWithFormat"@"%@", theToken];
NSString* description = [theToken description];

当使用 Xcode 10 编译并运行时,两者的结果都是:

@"<44154da7 32345001 53106883 ffc1071f a59c0d24 a70871e5 aa8dbb41>"

然而,当使用 Xcode 11 编译并运行时,结果是:

@"{length =32, bytes = 0x44154da7 32345001 53106883 ffc1071f ... a70871e5 aa8dbb41}"

(如果使用 Xcode 10 编译代码然后在 iOS 13 上运行,则不会出现后一个结果。)

当使用 Xcode 11 编译时,如何将 NSData 转换为 NSString,从而得到与 XCode10 相同的结果,或者如果使用 Xcode 10 编译,如何从返回结果中仅将字节部分提取到 NSString 中?

最佳答案

简而言之,你不能。

description 方法用于调试目的。它返回对象的字符串表示形式,但不保证该表示形式在不同版本之间保持稳定。

如果您需要将 NSData 编码为您控制格式的某种十六进制字符串,则必须手动执行此操作。

关于ios - 使用 Xcode 11 与 Xcode 10 编译时,NSData 描述和 NSString stringWithFormat 具有不同的返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56839860/

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