问题背景:项目之前有集成友盟分享,其中包括微信分享,但是最近接入微信支付的时候,pod 'WechatOpenSDK',之后报错如下:
[!]The 'pods-xxx' target has libraries with conflicting name:"libSocialWeChat.a"
大概意思是:项目里面已经存在了"libSocialWeChat.a"文件,看过网上很多种方式,包括删除友盟下的weChat文件,再pod 'WechatOpenSDK',pod install后,wechatOpenSDK确实可以成功pod成功,但是build 后,报错 frame找不到;除此之外,还有些把cocopods各种升级降级来处理,对我个人来说都不适用;
说下我的解决办法:
大概想了哈,其实就是新导入的微信支付库,之前友盟里面有的文件已经有了,就是个冲突问题而已。所以直接前往微信开房平台资源页:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419319164&token=&lang=zh_CN
微信开放平台资源页然后解压目录如下:
目录然后再看你项目中的weChat目录下的WXApiObject.h,这个文件和你下载的文件不一样,里面支付模块不完善,可以打开对比下,此时,把你新下载的这个文件跟项目中这个文件进行替换,即可解决问题。
如果这个不行,推荐方法二:
注意点一:微信分享(用微信精简版绝对不会影响你的分享!!!)
所以,你可以再podfile里面只集成微信分享精简版 + 微信支付,如下:
# 集成微信(精简版0.2M)
pod 'UMCShare/Social/ReducedWeChat'
# 集成微信支付
pod 'WechatOpenSDK'
注意:这里一定把完整版本删除!!!
最后:如果报错:iOS lb: framework not found Pods_Alamofire___
解决方法:
1.项目蓝色图标->Targets->General->Linked Frameworks and Libraries
2.删除 Pods_Alamofire___.frameworks
这个确实有点坑,我是这样爬出来的,希望对你有用!!!
网友评论