天天看點

2021年Android面試心得,面試真題解析一面:二面:

前言

這裡是我整理的2019年至2021年期間通過各個管道花時間專門整理的面試題,其中面試重點和難點都有詳細解析,重點講的是Android各方面的專題講解包括Java小部分的技術講解。這些題目有點技術含量,需要時間去研究一下的。

這裡我不僅給大家整理了多套BAT面試題,還有小編一路收集到的面試方面的資料包及面試相關視訊資料,這些在文末有提供免費領取方式的,其中包括初級,中級,進階不同水準以及不同專題所涉及到的常問範圍,及面試專題和答案和系統學習視訊資料,免費分享給大家,省去網上到處搜尋資料的麻煩。

希望通過這些進階面試題能夠降低面試Android崗位的門檻,讓更多的Android工程師了解Android系統,掌握Android系統!

一面:

應該是個參加工作不久的研究僧師兄,出了一道算法題,主要考字元轉int,然後分析了時間複雜度和空間複雜度,之後聊了android listView的性能優化,還問我recycalView的特點,程序通信的方式,我主要說了aidl和共享檔案,廣播,本來還想用java裝B,還在精通java,然而師兄并沒有問,說叫等一下

二面:

二面明顯難度提升,而且面試管應該是組長吧,比較喜歡聽吹架構,正好之前自己從web背景,用戶端,硬體等方面做了一個智能家居項目,就吹了下硬體那邊的邏輯,包括藍牙,wifi的HTTP/IP協定,透傳等,紅外等傳感器,然後web背景我說我用sevlet,因為本身用戶端主要需要接口,資料庫用mysql,也沒問rollback(嘿嘿),然後把用戶端展示給他看看,實在太醜沒有美工(這不是重點),由于我的項目中有一個很重要的point就是在硬體觸發時喚醒伺服器背景推送,首先硬體識别後,序列槽讀寫資料到單片機,單片機寫入wifi緩沖區,wifi通過HTTP透傳資料到我伺服器(可以用TCP和IP),伺服器擷取mac辨別,推送至TAG(家庭ID)或者使用者(Alias)

說到推送,好好吹吹實作原理。

1:pull方式,http長連接配接或是socket,輪詢間隔設好即可,缺點及時性差

2:push方式,實時性好,方法1,google自帶推送平台(網太差),方法二,xmpp協定(基于XML)。其實封裝的比較好了,有個開源包叫asmark,其中有XmppConnection這個推送庫,話說好多公司都是用它自己封裝庫,不過開源的demo隻管推,沒有延時推送,消息暫存功能,方式3,用三方的

算法:是2個有序數組合并問題,用2個指針每次比較能夠O(n)解決問題,算法pass

LruCache:先裝裝B,說一下我寫的和google V4包有什麼不同,主要是沒有trimToSize方法,沒有sizeof()計算記憶體耗費大小,我主要是重寫LinkedHashMap,講了下LinkHashMap源碼,其實我也是看别人寫的源碼解析,(嘿嘿,畢竟年輕,多向别人學習)

更多Android進階工程師進階學習資料

進階學習視訊

2021年Android面試心得,面試真題解析一面:二面:

附上:我們之前因為秋招收集的二十套一二線網際網路公司Android面試真題(含BAT、小米、華為、美團、滴滴)和我自己整理Android複習筆記(包含Android基礎知識點、Android擴充知識點、Android源碼解析、設計模式彙總、Gradle知識點、常見算法題彙總。)

2021年Android面試心得,面試真題解析一面:二面:
  • 點選這裡自行免費下載下傳

s.qq.com/doc/DSkNLaERkbnFoS0ZF)

裡面包含不同方向的自學程式設計路線、面試題集合/面經、及系列技術文章等,資源持續更新中…