金三月、銀四月,過年回來是跳槽的高峯期,不安分的小編也投了幾家,想換個工做,換個環境。兩個星期來,面了四家公司,如今將面試內容整理與你們分享。面試
某知名在線教育公司
- VideoView、ExoPlayer、IjkPlayer和Vitamio這幾種主流播放器的比較;
- 垃圾回收機制,JVM內存分配、如何斷定對象可回收;
- 算法:n(很大)個無序數中找最大的10個數;
- 談談內存優化;
- 如何反編譯,對代碼逆向分析;
- 自定義View流程,主要的方法及各自做用;
- 如何防止過分繪製;
- LruCache原理;
- 事件分發及舉例說明;
- 混合開發用過哪些框架,本身又是如何處理、封裝的;
- 介紹一個你所瞭解的開源框架及原理;
- 談談對http緩存的瞭解。
某知名網絡問答社區
- 安卓中方法數不能超過64k的緣由,及如何處理;
- Intent傳值有大小限制嗎,爲何,如何處理;
- 如何實現圓形ImageView;
- 說說動態代理的做用;
- 註解;
- 對數字進行或計算;
- 對View中的onMesurse方法的詳細介紹和使用;
- 如何本身實現RecyclerView的側滑刪除;
- TabLayout中如何讓當前標籤永遠位於屏幕中間;
- 垃圾回收機制;
- Activity跳轉時的生命週期問題;
- LruCache和DisLruCache的原理;
- EventBus原理;
- 線程池的參數和工做原理;
- 對js互調如何使用,作過什麼優化;
- 算法:歸併排序
某知名直播平臺
- 手寫代碼:遍歷文件目錄;
- 電梯運行的算法分析;
- 談談本身項目的架構,如何優化;
- 算法:手寫冒泡排序;
- ijkPlayer播放器源碼;
- 視頻播放器的手勢控制如何處理;
- ArrayList、Vector、LinkedList的區別;
- 遇到過哪些關於Fragment的問題;
- 圖片的處理和優化;
- Android實現異步的幾種方式;
- JVM垃圾回收機制;
- 如何對Android應用進行性能分析;
- 介紹一個你比較欣賞的app或者開源框架。
某知名視頻播放公司
- 自定義View流程;
- MVP的優勢與確點;
- ClassLoader的雙親委派;
- 手寫實現單鏈表的get操做;
- 用過哪些插件化方案;
- 圖片處理和緩存;
- 生產者、消費者模式;
- 如何對應用進行性能優化;
- 64k出現的緣由及如何解決;
- 對ART的認識;
- 動態代理的做用;
- Retrofit和EventBus的源碼分析;
- EventBus如何作到黏性發送的;
- TextView調用setText方法的內部執行流程;
- 對線程池的認識和它的幾個子類;
很幸運,小編拿到了其中兩家的offer(就不具體透露了)。算法
經過這幾天的面試經歷,有幾點感想:緩存
-
大廠面試,通常不會問某一個具體功能如何實現;性能優化
-
大廠更重視基礎;微信
-
數據結構和算法真的是很是重要,是平常工做和麪試的基礎;網絡
-
咱們應該多看源碼,瞭解內部流程,而不僅是停留在會使用上;數據結構
將這兩週面試的內容與感想與你們分享,但願能對你們有所幫助。架構
更多精彩內容,歡迎關注個人微信公衆號——Android機動車app