記錄最近業務中出現的兩個問題

2021-09-11 21:21:02 字數 776 閱讀 4734

兩個問題都出現在ios 9上,使用者比例大概是在10%左右,還是佔了比較大的比例,但我們平時開發所使用的測試機和模擬器都是ios 10,同時這兩個問題出現的場景需要較多的條件,於是問題就這麼漏過去了。

1.tttattributedlabel的text中包含emoji會引發記憶體溢位.

上面是這個問題的issue,具體就不分析了,解決辦法和原因都在issue裡,只是發現這個問題的過程實在太過曲折——運營那邊不停在向我們抱怨使用者反饋crash,可是fabric上真的乾淨得如一張白紙(其實也不太乾淨)啊。

2.uicollectionview datasource is not set.

ios9中,uicollectionview removefromsuperview時,會呼叫datasource中的一些方法,此時如果datasource已經釋放,就會出現上圖中的crash。ios 10中uikit中對這部分邏輯做了改動,因此不會crash了。

而造成datasource會被提前釋放的很大可能原因就是,在構造uicollectionview的例項時,uicollectionview的superview與datasource生命週期不一致。舉例說:在a類中建立了uicollectionview和bview的例項,同時把uicollectionview加入了bview的subviews,但是datasource設定為了a類,如果a的生命週期比bview要長,那就不會有問題,但是如果a在bview前先被析構了,就會引發crash。

解決辦法,在a的dealloc中將uicollectionview提前removefromsuperview。

最近遇到的兩個問題

最近做專案時,遇到兩個小問題,搜尋了一翻,還真不好找答案,最終還算解決了,於是有寫出來的衝動。希望能給遇到這類問題的同仁們有所幫助。一 如何設定componetart calendar 1 日期控制項的顯示語言 先說下我當時的遇到這個問題時的環境,由於開發是中文作業系統上進行的,所以在本地除錯時,沒...

記錄兩個python的小問題

使用python也前前後後也乙個月的樣子,記錄兩個一直沒注意的問題。1 元組的使用 拼接字串 直接看下面的 python view plain copy kel some strings type kel tuple print kel some strings 一直以為兩個字串加一起是乙個字串,從...

python兩個小問題的記錄

主要源自知乎的問題 知乎的答案以及引申查詢到的部落格,記錄下來便於以後回顧總結 file one.py deffunc print func in one.py print top level in one.py if name main print one.py is being run dire...