最近在做swift Framework ,项目中用到了MD5 加密,平时swift使用OC代码库直接在桥接文件中添加#import<CommonCrypto/CommonCrypto.h>,但是在使用自己的framework的时候发现桥接文件没有用,手动添加也不行,这个时候就需要用到下面的方法了。
首先,在你的framework里面添加一个新的target,选择Aggregate,命名为CommonCryptoModuleMap
,然后添加一个Run Script ,
bash为:
mkdir -p "${BUILT_PRODUCTS_DIR}/CommonCryptoModuleMap"
cat <<EOF > "${BUILT_PRODUCTS_DIR}/CommonCryptoModuleMap/module.modulemap"
module CommonCrypto [system] {
header "${SDKROOT}/usr/include/CommonCrypto/CommonCrypto.h"
export *
}
EOF
然后在Target Dependencies添加新创建的target
最后在Build Settings -> SearchPaths -> Header Search Paths添加${BUILT_PRODUCTS_DIR}/CommonCryptoModuleMap
和$(inherited)
现在回到framework你就可以添加头文件 import CommonCrypto
了