《iOS系列之不看別后悔》NS_DEPRECATED_IOS愧驱、NS_AVAILABLE_IOS詳解

蘋果公司已成立10周年慰技,10年來,Xcode內(nèi)部大量api被廢棄组砚,但是有時(shí)候吻商,為了兼容低版本,我們不得不使用被廢棄的api糟红,這樣可能會(huì)使我們的代碼看起來冗余而又復(fù)雜艾帐,甚至是條理不清。
通常盆偿,當(dāng)我們從APP跳轉(zhuǎn)至第三方應(yīng)用柒爸,實(shí)現(xiàn)分享、支付等功能后事扭,返回APP時(shí)捎稚,需要處理分享、支付等結(jié)果句旱。
可能大多數(shù)人都會(huì)實(shí)現(xiàn)如下三個(gè)方法

處理分享阳藻、支付等結(jié)果

細(xì)心的朋友已經(jīng)發(fā)現(xiàn),在每一個(gè)方法上面谈撒,我都寫有一句注釋:
NS_DEPRECATED_IOS(2_0, 9_0)腥泥、
NS_DEPRECATED_IOS(4_2, 9_0)
NS_AVAILABLE_IOS(9_0)啃匿。
當(dāng)然蛔外,這種寫法并非我個(gè)人所創(chuàng)蛆楞,而是Xcode內(nèi)部標(biāo)明api信息的簡(jiǎn)單宏定義。單詞DEPRECATED的意思是廢棄的夹厌,單詞AVAILABLE的意思是可用的豹爹,于是這種宏定義的意義就顯而易見了。
NS_AVAILABLE_IOS(9_0)表明該api自iOS 9.0時(shí)啟用矛纹,
NS_DEPRECATED_IOS(2_0, 9_0)表明該api自iOS 2.0時(shí)啟用臂聋,到iOS 9.0時(shí)被廢棄,但是被廢棄的api并非不能使用或南,而是建議開發(fā)者使用相應(yīng)的api進(jìn)行替換孩等。

下面開始劃重點(diǎn),還拿這三個(gè)方法舉例采够,我們?yōu)榱思嫒莸桶姹疽薹剑谑呛醢讶齻€(gè)方法全部實(shí)現(xiàn)了,那么當(dāng)我們從第三方應(yīng)用返回APP時(shí)蹬癌,這三個(gè)方法會(huì)全部調(diào)用嗎权她?
答案是不會(huì)全部調(diào)用,但是會(huì)調(diào)用其中的一個(gè)逝薪。

那么隅要,這種api的調(diào)用機(jī)制是什么,經(jīng)過反復(fù)的測(cè)試和嚴(yán)密的推斷翼闽,我做出大膽猜想:應(yīng)用程序會(huì)優(yōu)先調(diào)用當(dāng)前iOS系統(tǒng)內(nèi)未被廢棄的api拾徙。

在此處,我們暫且把如上三個(gè)方法簡(jiǎn)稱為方法一感局、方法二方法三
若是運(yùn)行在iOS10系統(tǒng)上暂衡,由于方法一询微、方法二均被廢棄,因此調(diào)用方法三狂巢,
若是運(yùn)行在iOS8系統(tǒng)上撑毛,由于方法一被廢棄,方法三未啟用唧领,因此調(diào)動(dòng)方法二藻雌。

為了驗(yàn)證這個(gè)結(jié)論,我找到了類似情況的api(推送)進(jìn)行測(cè)試斩个,與預(yù)期結(jié)果完全一致胯杭。

接收推送

至此,困擾我許久的問題終于解決受啥,如果大家還有什么好的建議或想法做个,歡迎留言鸽心。
我們是偉大的程序員,我們天生愛分享居暖!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末顽频,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子太闺,更是在濱河造成了極大的恐慌糯景,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,290評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件省骂,死亡現(xiàn)場(chǎng)離奇詭異蟀淮,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)冀宴,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門灭贷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人略贮,你說我怎么就攤上這事甚疟。” “怎么了逃延?”我有些...
    開封第一講書人閱讀 156,872評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵览妖,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我揽祥,道長(zhǎng)讽膏,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,415評(píng)論 1 283
  • 正文 為了忘掉前任拄丰,我火速辦了婚禮府树,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘料按。我一直安慰自己奄侠,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
  • 文/花漫 我一把揭開白布载矿。 她就那樣靜靜地躺著垄潮,像睡著了一般。 火紅的嫁衣襯著肌膚如雪闷盔。 梳的紋絲不亂的頭發(fā)上弯洗,一...
    開封第一講書人閱讀 49,784評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音逢勾,去河邊找鬼牡整。 笑死,一個(gè)胖子當(dāng)著我的面吹牛敏沉,可吹牛的內(nèi)容都是我干的果正。 我是一名探鬼主播炎码,決...
    沈念sama閱讀 38,927評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼秋泳!你這毒婦竟也來了潦闲?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,691評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤迫皱,失蹤者是張志新(化名)和其女友劉穎歉闰,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體卓起,經(jīng)...
    沈念sama閱讀 44,137評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡和敬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了戏阅。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片昼弟。...
    茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖奕筐,靈堂內(nèi)的尸體忽然破棺而出舱痘,到底是詐尸還是另有隱情,我是刑警寧澤离赫,帶...
    沈念sama閱讀 34,289評(píng)論 4 329
  • 正文 年R本政府宣布芭逝,位于F島的核電站,受9級(jí)特大地震影響渊胸,放射性物質(zhì)發(fā)生泄漏旬盯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
  • 文/蒙蒙 一翎猛、第九天 我趴在偏房一處隱蔽的房頂上張望胖翰。 院中可真熱鬧,春花似錦切厘、人聲如沸泡态。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至桐汤,卻和暖如春而克,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背怔毛。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國(guó)打工员萍, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人拣度。 一個(gè)月前我還...
    沈念sama閱讀 46,316評(píng)論 2 360
  • 正文 我出身青樓碎绎,卻偏偏與公主長(zhǎng)得像螃壤,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子筋帖,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

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