gpt4 book ai didi

objective-c - 非托管 不可转换为 SecKey

转载 作者:行者123 更新时间:2023-11-28 07:17:29 25 4
gpt4 key购买 nike

我想在 Swift 中进行 RSA 加密,但我在这一行遇到了一个奇怪的错误:

    var publicKey:SecKeyRef = KeyFormatter.getPublicKeyReference("com.apple.sample.publickey")

通常,在 Objective-C 中它没问题,'getPublicKeyReference' 方法返回一个 SecKeyRef 对象。但是当我根据 Swift 语法在 Swift 文件中键入它时,它会给我错误消息“Unmanaged is not convertible to SecKey”。

KeyFormatter 类仍然是用 Objective-C 编写的。因此,当我调用此方法(到桥接 header )时,返回类型在 Swift 中的表示方式不同吗?如果是这样,我该如何克服这个问题?

最佳答案

参见将 Swift 与 Cocoa 和 Objective-C 结合使用 -> Working with Cocoa Data Types -> 一直向下滚动到“核心基础”。

因为特定 API 当前未针对内存管理语义进行审核,您将需要调用 takeUnretainedValue()takeRetainedValue(),具体取决于该 API 的内存管理语义具体方法。

关于objective-c - 非托管 <SecKey> 不可转换为 SecKey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24890632/

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