我在导入CommonCrypto/CommonCrypto
或CommonCrypto/CommonDigest
时遇到问题。我的Swift
代码需要SHA256。
我在Cocoapods找到了CommonCrypto
github网站。
https://github.com/AlanQuatermain/aqtoolkit
所以我从上面下载了文件。
但是我收到有关ARC
的错误(我已经像其他教程一样添加了Bridging-Header。)
标头文件的名称为NSData+CommonCrypto.h
和NSData+CommonCrypto.m
这不是CommonCrypto/CommonCrypto
或CommonCrypto/CommonDigest
我在哪里可以下载并获取SHA256的确切文件CommonCrypto
?
答案 0 :(得分:7)
无需其他文件。您首先需要一个bridging header,但是对于那些不是最简单的方法来实现这一点的人来说,就是将Objective-C文件添加到项目中并在它提供创建时接受一个桥接头。然后,您可以将整个CommonCrypto导入(感谢@zaph - 请参阅注释)到桥接标题:
#import <CommonCrypto/CommonCrypto.h>
或组成部分:
#import <CommonCrypto/CommonCryptor.h>
#import <CommonCrypto/CommonDigest.h>
#import <CommonCrypto/CommonHMAC.h>
#import <CommonCrypto/CommonKeyDerivation.h>
#import <CommonCrypto/CommonSymmetricKeywrap.h>
您现在可以在Swift中使用CommonCrypto。例如代码see here。
修改强>
在Xcode 10中,不再需要桥接头来导入Swift中的CommonCrypto。你可以简单地使用:
import CommonCrypto
答案 1 :(得分:0)
实际上,您不需要使用CommonCrypto编译任何文件,只需将其导入项目即可。
或在Swift中使用一些包装器,就像https://github.com/soffes/Crypto
一样让我们回到CommonCrypto文件,Apple已经在https://opensource.apple.com/source/发布了它的源代码