簡介
??QQ分享我一直用的是TencentOpenAPI的1.0.0版本,滿足分享的一切需求,但是有備案的小伙伴告訴我,備案檢測中發(fā)現(xiàn)了UIWebView控件,什么Webview組件跨域訪問風(fēng)險巴拉巴拉一大堆,無法過審;在規(guī)定的期限內(nèi)必須替換為WKWebView。UIWebView這么過時的控件,項目中沒用啊,我用Hopper檢測了一下我的項目,發(fā)現(xiàn)時QQ分享用的1.0.0版本,其中包含了UIWebView,沒辦法了只能升級最新的QQ分享SDK吧。
1.進入QQ開發(fā)平臺
??查看最新的版本是3.5.7,但是該版本不支持pod,果斷放棄;看了一下其它版本,在cocopods官網(wǎng)搜一下,有沒有對應(yīng)的版本,有就證明該版本支持pod;最后發(fā)現(xiàn)3.5.5版本支持pod,那果斷開啟so easy的旅程。
2.pod新SDK
??2.1在項目pod的配置文件Podfile中加入:
pod 'TencentOpenAPI_iOS_V3', '~> 3.5.5' # QQ分享
??2.2報錯
??引入3.5.5后,在橋接文件中引入.h文件報錯,如下圖:

456.jpg
??發(fā)現(xiàn)SDK文件中包含module.modulemap文件,是不是可以直接引入啊,試了一下報錯如下:

78.png
??從來沒有遇到過這種情況?于是去百度,去StackOverflow,沒有找到答案,那就去看一下SDK的module.modulemap文件吧。
??尋找步驟:SDK包 -> Frameworks -> TencentOpenAPI -> show in finder -> Headers -> module.modulemap -> 打開module.modulemap文件,進行修改。
??3.5.5的module.modulemap文件內(nèi)容如下:
module TencentOpenApi{
umbrella header "TencentOpenApiUmbrellaHeader.h"
export *
}
修改為下面內(nèi)容:
framework module TencentOpenAPI {
header "QQApiInterface.h"
header "QQApiInterfaceObject.h"
header "TencentOAuth.h"
header "TencentOpenApiUmbrellaHeader.h"
header "sdkdef.h"
export *
}
??修改后,在橋接文件中引入需要的.h文件即可,繼續(xù)編譯,運行成功,完事了。