iOS冷門知識(shí)-關(guān)于iOS9出現(xiàn)的系統(tǒng)Bug

首先纹腌,需要說(shuō)明的是,這個(gè)Bug是否是系統(tǒng)Bug無(wú)法直接證明神僵,至少在我的測(cè)試環(huán)境下確認(rèn)并不是由我們App引起的Bug覆劈,這個(gè)Bug在一個(gè)新構(gòu)造的項(xiàng)目中也能復(fù)現(xiàn)责语,經(jīng)此坤候,我判斷為蘋果在iOS9中刪改了一部分代碼導(dǎo)致的系統(tǒng)Bug企蹭。
該Bug對(duì)App的內(nèi)存消耗有一定影響谅摄,而且測(cè)試發(fā)現(xiàn)難以釋放送漠,萬(wàn)幸的是,國(guó)內(nèi)大多數(shù)App幾乎不可能出現(xiàn)這個(gè)Bug尼酿,但裳擎,若有朋友維護(hù)的App需要與阿拉伯地區(qū)打交道則需稍加警惕思币。


該Bug判斷為特殊字符無(wú)法識(shí)別引起的Bug支救,具體緣由似乎是蘋果在構(gòu)造iOS9的時(shí)候取消了一部分特殊字符的支持各墨,導(dǎo)致當(dāng)使用iOS9大版本的設(shè)備進(jìn)行測(cè)試時(shí)XCode控制臺(tái)會(huì)報(bào)相應(yīng)警告(在iOS8中不會(huì)出現(xiàn)該Bug)贬堵,當(dāng)特殊字符出現(xiàn)在Label中時(shí)控制臺(tái)會(huì)報(bào)如下警告:

2016-08-04 18:22:08.506 Shou[422:116177] CoreText: *** Unmapped ".????" <CTFont: 0x12fcfbc00>{name = .SFUIText-Regular, size = 16.000000, matrix = 0x0, descriptor = <CTFontDescriptor: 0x12fab5c00>{attributes = <CFBasicHash 0x12fab6f30 [0x1a123f150]>{type = mutable dict, count = 2,
entries =>
    0 : <CFString 0x19cc53be0 [0x1a123f150]>{contents = "NSCTFontUIUsageAttribute"} = <CFString 0x19cc440c0 [0x1a123f150]>{contents = "CTFontRegularUsage"}
    2 : <CFString 0x19cc53740 [0x1a123f150]>{contents = "NSFontNameAttribute"} = <CFString 0x19cc47160 [0x1a123f150]>{contents = ".SFUIText-Regular"}
}
>}}

似乎簡(jiǎn)書無(wú)法識(shí)別代碼塊中 Unmapped后的字符的樣子黎做,它的具體形狀就像兩朵蒲公英一樣。
在測(cè)試中我僅發(fā)現(xiàn)Xcode可以完美識(shí)別出特殊字符(瀏覽器悉數(shù)陣亡)筷厘。
也是機(jī)緣巧合酥艳,當(dāng)我在處理Right To Left 相關(guān)細(xì)節(jié)的時(shí)候才發(fā)現(xiàn)這中字符應(yīng)該是阿拉伯文的一種(至少它出現(xiàn)在阿拉伯文軟鍵盤中爬骤,至于它是不是霞玄,反正我也看不懂坷剧。)
就像這樣:

屏幕快照 2016-08-04 下午6.37.25.png

無(wú)法識(shí)別的特殊字符就是這么一群家伙,當(dāng)然补鼻,這只是我找到的风范,具體蘋果去除了多少類似字符的支持也無(wú)從判斷硼婿,但至少當(dāng)你的App中出現(xiàn)它們時(shí)是會(huì)受到影響的寇漫。

那么州胳,問(wèn)題來(lái)了栓撞,這些無(wú)法識(shí)別的字符到底會(huì)給App帶來(lái)怎么樣的影響呢?
這里我們用一個(gè)App相關(guān)的功能進(jìn)行測(cè)試瓢颅。

屏幕快照 2016-08-04 下午6.47.03.png

Today Extension是我們App中的一部分,蘋果對(duì)Extension的建議內(nèi)存消耗是10M,當(dāng)內(nèi)存消耗超出10M時(shí)則會(huì)報(bào)內(nèi)存警告信柿。


屏幕快照 2016-08-04 下午6.46.34.png

如上圖所示,一個(gè)不存在特殊字符的Today Extension內(nèi)存消耗為8.6M虎囚。
那么角塑,當(dāng)Label中存在特殊字符的內(nèi)存消耗是多少呢蔫磨?

屏幕快照 2016-08-04 下午6.53.39.png

屏幕快照 2016-08-04 下午6.53.16.png

在其他數(shù)據(jù)都不存在變化的時(shí)候淘讥,內(nèi)存消耗增加了2M多,并且這不是峰值數(shù)據(jù)堤如,最高峰值曾達(dá)到12M+蒲列。
僅僅是兩次測(cè)試并不能保證數(shù)據(jù)的嚴(yán)謹(jǐn)性,因此搀罢,以TodayExtension為測(cè)試對(duì)象蝗岖,共準(zhǔn)備了三組其他數(shù)據(jù)相同,唯有顯示文本不同的測(cè)試對(duì)象榔至,分別為英文文本抵赢、繁中文本邢享、繁中文本帶特殊字符三組伊履,各測(cè)試4次。(實(shí)在找不到英文文本帶特殊字符的對(duì)象,天知道灣灣為何喜歡在名字里加莫名其妙的特殊字符。)

英文文本內(nèi)存消耗為8.2睛廊、8.3邓馒、8.2、8.2。
繁中文本內(nèi)存消耗為8.2戳寸、8.3、8.0虏辫、8.2娄昆。
繁中文本帶特殊字符內(nèi)存消耗為11.1、11.7、11.5撼玄、11.9眉睹。

很明顯慕蔚,帶有特殊字符的內(nèi)存消耗比其他兩組高上不少十偶,目前并不清楚該內(nèi)存消耗的增加僅在Xcode測(cè)試環(huán)境下因?yàn)榭刂婆_(tái)警告而存在還是任何環(huán)境下都會(huì)存在狮崩,我想后者的概率更大毡熏。

有興趣的朋友可以在DEMO中測(cè)試一下。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末搭儒,一起剝皮案震驚了整個(gè)濱河市稀拐,隨后出現(xiàn)的幾起案子躲胳,更是在濱河造成了極大的恐慌隆檀,老刑警劉巖裳仆,帶你破解...
    沈念sama閱讀 216,919評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異捐康,居然都是意外死亡吹由,警方通過(guò)查閱死者的電腦和手機(jī)供屉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門崔列,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)瘦癌,“玉大人娘锁,你說(shuō)我怎么就攤上這事莫秆∧魇海” “怎么了?”我有些...
    開封第一講書人閱讀 163,316評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵刀森,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我识窿,道長(zhǎng)斩郎,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,294評(píng)論 1 292
  • 正文 為了忘掉前任喻频,我火速辦了婚禮缩宜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘甥温。我一直安慰自己锻煌,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,318評(píng)論 6 390
  • 文/花漫 我一把揭開白布窿侈。 她就那樣靜靜地躺著炼幔,像睡著了一般。 火紅的嫁衣襯著肌膚如雪史简。 梳的紋絲不亂的頭發(fā)上乃秀,一...
    開封第一講書人閱讀 51,245評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音圆兵,去河邊找鬼跺讯。 笑死,一個(gè)胖子當(dāng)著我的面吹牛殉农,可吹牛的內(nèi)容都是我干的刀脏。 我是一名探鬼主播,決...
    沈念sama閱讀 40,120評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼超凳,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼愈污!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起轮傍,我...
    開封第一講書人閱讀 38,964評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤暂雹,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后创夜,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體杭跪,經(jīng)...
    沈念sama閱讀 45,376評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,592評(píng)論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了涧尿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片系奉。...
    茶點(diǎn)故事閱讀 39,764評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖姑廉,靈堂內(nèi)的尸體忽然破棺而出缺亮,到底是詐尸還是另有隱情,我是刑警寧澤庄蹋,帶...
    沈念sama閱讀 35,460評(píng)論 5 344
  • 正文 年R本政府宣布瞬内,位于F島的核電站迷雪,受9級(jí)特大地震影響限书,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜章咧,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,070評(píng)論 3 327
  • 文/蒙蒙 一倦西、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧赁严,春花似錦扰柠、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至程剥,卻和暖如春劝枣,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背织鲸。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工舔腾, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人搂擦。 一個(gè)月前我還...
    沈念sama閱讀 47,819評(píng)論 2 370
  • 正文 我出身青樓稳诚,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親瀑踢。 傳聞我的和親對(duì)象是個(gè)殘疾皇子扳还,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,665評(píng)論 2 354

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

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,090評(píng)論 25 707
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)橱夭,斷路器氨距,智...
    卡卡羅2017閱讀 134,654評(píng)論 18 139
  • 女兒2005年在天津中學(xué)初中畢業(yè)后,正式到美國(guó)讀高中徘钥。她所在的高中位于加州的Millbrae市衔蹲,靠近舊金山飛機(jī)場(chǎng),...
    天地之間的陽(yáng)光閱讀 2,486評(píng)論 6 11
  • 旅行·在路上·裸辭后去旅行并沒(méi)有想象的那樣精彩,但我還是希望能再來(lái)一次 作者:?jiǎn)市牟】竦男?jiān)果 “世界那么大舆驶,我想...
    簡(jiǎn)黛玉閱讀 9,103評(píng)論 9 119
  • 01 過(guò)了除夕夜啊橱健,才像是迎接了新的一年。元旦到新年的這段日子著實(shí)有些尷尬讓人提不起精神來(lái)做事沙廉,總覺(jué)得拘荡,嗯,時(shí)候還...
    蘭風(fēng)蕙露閱讀 342評(píng)論 0 3