[iOS]第三方sdk逞敷,如果不用請(qǐng)移除

最近集中優(yōu)化crash,出現(xiàn)一個(gè)unrecognized selector sent to instance 0x157aeb130的問(wèn)題灌侣,一般這種明顯的問(wèn)題(button對(duì)應(yīng)的selector找不到推捐,基本不是沒(méi)寫就是方法名寫錯(cuò)了,要么就是button提前被release了)侧啼,
應(yīng)該在測(cè)試前期就可以發(fā)現(xiàn)的牛柒。

但是查看錯(cuò)誤地址的時(shí)候出現(xiàn)了:

-[UIApplication(BTGMethodSwizzler) btg_swizzleSendEvent:] (in xxx) (UIApplication+BTGMethodSwizzler.m:28)

可我代碼里沒(méi)有做過(guò)Swizzler這種轉(zhuǎn)發(fā)魔法.

然后查其他crash,出現(xiàn)一例Application received signal SIGSEGV的問(wèn)題


屏幕快照 2016-01-26 下午4.49.05.png

一般這種東西,很難直接從友盟里看出有用信息痊乾,常見(jiàn)的可能性就是
1,SIGABRT 2,EXC_BAD_ACCESS(SIGSEGV)
換句話說(shuō):1.過(guò)度release 2.unrecogized selector皮壁。

再次根據(jù)錯(cuò)誤地址分析如下:
根據(jù)錯(cuò)誤的地址進(jìn)一步分析


屏幕快照 2016-01-26 下午4.52.29.png

okey,又出現(xiàn)這個(gè)了

后來(lái)查下來(lái)是使用了一個(gè)第三方的bug收集sdk. 里面出現(xiàn)了錯(cuò)誤.
但是上線的時(shí)候注冊(cè)這個(gè)sdk key的地方我是關(guān)掉的啊哪审,怎么會(huì)帶上去呢蛾魄?

Method Swizzling
直接參考:
cocoachina

(備注:簡(jiǎn)單說(shuō)下,我知道大部分人可能懶得再點(diǎn)進(jìn)去看湿滓,Method Swizzling 本質(zhì)是基于runtime滴须,然后可實(shí)現(xiàn)的最簡(jiǎn)單的東西就是消息轉(zhuǎn)發(fā),就是把2個(gè)方法替換一下叽奥,執(zhí)行A方法的去執(zhí)行方法B扔水,執(zhí)行B方法的去執(zhí)行方法A.. 當(dāng)然,實(shí)際上復(fù)雜很多朝氓,大家點(diǎn)進(jìn)去看就好)

other flags link
(備注:Other Linker Flags有3種方法魔市,最常見(jiàn)的用途是加載靜態(tài)類,比如第三方sdk. 具體3種方法:

-ObjC
-all_load
-force_load
```)

因?yàn)楹芏鄐dk當(dāng)被你Other Linker Flags加入后赵哲,如果他寫了一些category方法待德,那就可能被引用到. 我這里就是。
即使我代碼里并沒(méi)有專門調(diào)用這個(gè)sdk 的方法. (其實(shí)這個(gè)調(diào)用也只是和sdk有交互枫夺,他本身被調(diào)用時(shí)-ObjC的機(jī)制做決定的)


所以出現(xiàn)了将宪,我誤以為我并沒(méi)有使用這個(gè)sdk,但是實(shí)際還是跑了sdk的代碼
甚至于因?yàn)槠浯a導(dǎo)致了我app的crash.

解決方案:
1. 上線版本,移除sdk
2. sdk不移除涧偷,直接在Other Linker Flags -release版本移除就好.

因?yàn)槲覀兤綍r(shí)線下測(cè)試還是用到這個(gè)sdk的簸喂,所以直接移除包不是很方便,還是選擇了后者
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末燎潮,一起剝皮案震驚了整個(gè)濱河市喻鳄,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌确封,老刑警劉巖除呵,帶你破解...
    沈念sama閱讀 221,273評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異爪喘,居然都是意外死亡颜曾,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門秉剑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)泛豪,“玉大人,你說(shuō)我怎么就攤上這事侦鹏」钍铮” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵略水,是天一觀的道長(zhǎng)价卤。 經(jīng)常有香客問(wèn)我,道長(zhǎng)渊涝,這世上最難降的妖魔是什么慎璧? 我笑而不...
    開封第一講書人閱讀 59,520評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮跨释,結(jié)果婚禮上胸私,老公的妹妹穿的比我還像新娘。我一直安慰自己煤傍,他們只是感情好盖文,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,515評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蚯姆,像睡著了一般。 火紅的嫁衣襯著肌膚如雪洒敏。 梳的紋絲不亂的頭發(fā)上龄恋,一...
    開封第一講書人閱讀 52,158評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音凶伙,去河邊找鬼郭毕。 笑死,一個(gè)胖子當(dāng)著我的面吹牛函荣,可吹牛的內(nèi)容都是我干的显押。 我是一名探鬼主播扳肛,決...
    沈念sama閱讀 40,755評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼乘碑!你這毒婦竟也來(lái)了挖息?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,660評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤兽肤,失蹤者是張志新(化名)和其女友劉穎套腹,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體资铡,經(jīng)...
    沈念sama閱讀 46,203評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡电禀,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,287評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了笤休。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片尖飞。...
    茶點(diǎn)故事閱讀 40,427評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖店雅,靈堂內(nèi)的尸體忽然破棺而出政基,到底是詐尸還是另有隱情,我是刑警寧澤底洗,帶...
    沈念sama閱讀 36,122評(píng)論 5 349
  • 正文 年R本政府宣布腋么,位于F島的核電站,受9級(jí)特大地震影響亥揖,放射性物質(zhì)發(fā)生泄漏珊擂。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,801評(píng)論 3 333
  • 文/蒙蒙 一费变、第九天 我趴在偏房一處隱蔽的房頂上張望摧扇。 院中可真熱鬧,春花似錦挚歧、人聲如沸扛稽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)在张。三九已至,卻和暖如春矮慕,著一層夾襖步出監(jiān)牢的瞬間帮匾,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工痴鳄, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留瘟斜,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,808評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像螺句,于是被迫代替她去往敵國(guó)和親虽惭。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,440評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容