為什麼那麼恨android

2021-09-01 13:04:47 字數 1309 閱讀 9008

我不是果粉,但是,我很喜歡賈伯斯,是個喬粉

我是android開發者,從不動ios開發,目前為止

android的開發策略,導致碎片化日益的嚴重,給你舉一些例子:關於適配

同一套**,在配置不高的huawei 8800+上執行流暢,但是在samsung s3上非常的卡頓,原因僅僅是乙個顯示api:你要呼叫view.setbackgrounddrawable(new bitmapdrawable(...)),而不是,view.setimageresource()(儘管.png就在你的res/drawable中),因為你要顯示的很大,而且是不停的再更換顯示,將會引發不停的system.gc()(這個實驗的平台均是android4.x)

還有很多個系統級bug,好吧,這篇文章也是在說這些bug(並會不斷更新),很榮幸,大部分在4.x上已經被解決了

1. layout1.xml將被include到main.xml中,而layout1.xml中的root view設定了layoutparams,但是在最終顯示時,會完全不考慮該lp

解決:在**裡面,再次為layout1.xml的root view設定lp

是否在4.x中出現:否

2.父親是framelayout,而孩子也是framelayout,當不停的設定孩子的margin時,以期望有運動的效果時,失敗

解決:請將孩子設定relativelayout,而不是framelayout

是否在4.x中出現:否

3.你有兩個activity1和activity2,流程是這樣的,先展示activity1,停3s後,跳轉到activity2。

嗯,很完美,但是,看看這個情形:activity1在展示,然後按home按鍵,一段時間後,自動跳轉到activity2

請不要說,這可以通過設計避免,但是,請讓我說完

startactivity(activity2)呼叫後,並不會立刻呼叫activity2.oncreate,則,意味著什麼

好吧,再細緻一點:startactivity(activity2), activity1.onpause, activity2.oncreate, ***

這個流程有什麼問題呢?

a.在正常的情況下,是該流程

b.在activity顯示,然後home按鍵,一段時間後,自動跳轉到activity2,也是該流程

那麼,我該如何判斷上述兩種情況呢

有人可能會說,捕捉一下home按鍵咯,那麼,請google一下,ics已經遮蔽了這種方法

我嘗試了 recenttask, runningtask,以區別上述兩個情況,但是,都失敗了(如果你知道怎麼來區分,請告訴我)

是否在4.x中出現:是

Redis為什麼那麼快

前言redis是基於鍵值對的nosql資料庫,redis的value可以由string,hash,list,set,zset,bitmaps,hyperloglog等多種資料結構和演算法組成。redis還提供了鍵過期,發布訂閱,事務,lua指令碼,哨兵,cluster等功能。redis執行命令非常快...

redis為什麼那麼快

目錄 redis快的原因 為什麼不採用多程序或多執行緒處理?單執行緒處理的缺點?多路 i o 復用 redis完全基於記憶體,絕大部分請求是存粹的記憶體操作,執行效率高,每秒能夠達到10萬 s的查詢速度 資料結構簡單,對資料操作也簡單 採用多路i o復用,非阻塞io,採用多路 i o 復用技術可以讓...

Bitmap為什麼那麼快?

目錄 一 bitmap是個啥?二 bitmap有什麼優缺?三 bitmap有啥應用場景?bitmap實際上就是string型別的,你可以在redis裡面help一下可以看到string是有類似bitop bitpos等位操作。redis中的string型別最大支援512m,因此最多可以支援512 1...