ios – 无法在混合语言框架中导入CommonCrypto

ios – 无法在混合语言框架中导入CommonCrypto,第1张

概述我正在构建一个混合语言框架.我主要有 Swift文件和一些Objective-C文件. Objective-C文件之一是使用CommonCrypto的加密类. 似乎我出于某种原因无法导入它,即使我可以在Objective-C框架中导入它. 有人能解释一下为什么会这样吗? 我发现的所有其他解决方案都谈到了当我需要在Swift框架中的Objective-C中使用它时如何在Swift中使用CommonC 我正在构建一个混合语言框架.我主要有 Swift文件和一些Objective-C文件.

Objective-C文件之一是使用CommonCrypto的加密类.

似乎我出于某种原因无法导入它,即使我可以在Objective-C框架中导入它.

有人能解释一下为什么会这样吗?

我发现的所有其他解决方案都谈到了当我需要在Swift框架中的Objective-C中使用它时如何在Swift中使用CommonCrypto.

P.S:

>我尝试在伞头文件中添加导入,如下所示:
#import< CommonCrypto / CommonCrypto.h>
错误:在框架模块’header of header’中包含非模块化头文件
>这个答案没有解决问题:answer

解决方法 我自己也遇到过这个问题.以下是解决问题的方法:

>创建模块映射文件(here’s my file).
>复制最新的CommonCrypto.h标头.
>为这两个文件创建一个目录CommonCrypto.
>将目录(通过拖放)复制到项目中.
>在SWIFT_INCLUDE_PATHS下为目标框架添加目录路径.

这应该允许您在任何地方使用导入CommonCrypto(对于Swift,而不是Objective-C).

编辑:似乎我最初误读了这个问题.您想在Objective-C中使用CommonCrypto,然后使用Swift中的CommonCrypto.这里有一些建议:不要在公共标题中#import CommonCrypto,而是在内部.包装所有的加密结构,以便CommonCrypto没有任何公共依赖,然后通过默认的桥接过程从Swift中使用它.

总结

以上是内存溢出为你收集整理的ios – 无法在混合语言框架中导入CommonCrypto全部内容,希望文章能够帮你解决ios – 无法在混合语言框架中导入CommonCrypto所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1048880.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存