我正在使用Cryptoswift框架进行加密和解密。我在另一个Xcode project.The子项目中使用了一个Xcode项目,尽管主项目使用了pods,但它无法访问框架Cryptoswift。除此之外,我还将框架添加到了“链接框架和库”中。.The项目在模拟器中工作正常,但在device.When上不工作。我在收到错误的设备上运行它。
var enc = try AES(key: FirstStepEncryptionKey, iv: "", blockMode:.CBC, padding: NoPadding()).encrypt(firstStepArray)
错误:“使用无法解析的标识符'AES'”
虽然import语句没有显示任何错误,但我是公司中唯一的开发人员,没有人指导me.Please,请帮助我清除这一点。
更新:我添加了要嵌入二进制文件的文件,但它仍然崩溃,并显示"dyld:库未加载:@rpath/CryptoSwift.framework/CryptoSwift Referenced from: /var/containers/Bundle/Application/48894FB2-0CDB-4B8D-A763-1C57B3EDAE41/Vaya_Tracker.app/Vaya_Tracker Reason: image not found“
Fix:我必须将CryptoSwift.xcodeproj文件添加到我的Xcode项目中,而不是通过pods或Carthage添加它。
发布于 2018-03-22 06:25:58
我也在Cocoapods上使用CryptoSwift
,Swift的版本是Swift 4.0
。下面是我的podfile。
platform :ios, '8.0'
use_frameworks!
target 'MyAProjectName' do
pod 'CryptoSwift', '0.8.3'
end
要使用AES
,您必须导入CryptoSwift
。
import CryptoSwift
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
do {
let aes = try AES(key: "passwordpassword", iv: "drowssapdrowssap") // aes128
let ciphertext = try aes.encrypt(Array("Nullam quis risus eget urna mollis ornare vel eu leo.".utf8))
print(ciphertext)
} catch { }
}
}
根据评论更新崩溃问题:
然后清理构建并再次构建。如果仍然不起作用,那么尝试将两个框架的Linked framework and Libraries
中的status
设置为required
。
https://stackoverflow.com/questions/49420916
复制相似问题