基於0.39,Android平臺佈局
一、ListView 吃內存,沒法回收內存;性能
用Native 來自定義RN組件flex
目前須要完善: Type相同,佈局不一樣狀況下沒法動態改變UI動畫
二、navigator動畫慢;this
使用InteractionManager.runAfterInteractions 有所改善,但仍是稍慢spa
三、循環動畫會阻塞InteractionManager.runAfterInteractions的執行;debug
解決方案:調試
Animated.timing(this.state.animatedStartValue, {日誌 toValue: 1,圖片 duration: 500, delay: 1000, isInteraction: false,//加入此參數可解決,官方文檔上無此參數說明 }), |
四、儘可能使用shouldComponentUpdate控制刷新,顯著提升性能;
五、低版本使用flex佈局,設置flex屬性,高版本改爲flexGrow,flexShirk等屬性,若不會形成UI錯亂;
六、debug版本常常崩潰,release版本無此問題,官方文檔0.42上會修復此問題;
崩潰緣由:
在debug版本時APP一直嘗試鏈接本地代碼,失敗了就再次建立HttpClient去鏈接,直到OOM;
七、使用Modal時不要和系統的Dialog同時彈出,不然會崩潰,
崩潰緣由:
Modal最終實現仍是用Dialog,沒有得到Token;
八、業務量過大時,bundle過大,加載稍慢,第一次加載把全部文件load進入內存(官方未出拆包方案),沒法像HTML按需加載;
九、Text沒法設置border;
十、打包過程當中圖片按照 圖片文件目錄+圖片名 生成到一個文件夾中
@2x的生成到xhdpi
@3x的生成到xxhdpi
爲減少包大小可去掉@3x圖片
十一、橫向ScrollView,若兩tab高度不一致時,容易出現高度錯亂;
十二、RN升版本改動很大
1三、錯誤日誌打印不全,遇到崩潰難以跟蹤到具體代碼位置,難以調試;IOS稍好,Android太慢;