凜冬已至,一個android碼農面進了騰訊,終於到達2020的春日
由於眾所周知的原因,原生android開發如今已經日漸凋敝,
作為一個Android程式設計師,不僅要會Java,Kotlin,JavaScript,Css,Html,還要會Flutter,C++,FFmpeg,Linux等相關知識。
我有個朋友面試了n家公司,終於面上了騰訊
前前後後面試了快二十家公司,既有外包,也有中小型企業,也有準備D輪甚至上市的C輪企業,更有BAT等知名企業。
接下來就一一說一下他去面試各家公司的面試題。
也建議各位面試的時候不要上來就直奔BAT等,大廠面試官的技術廣度與深度也不是剛出來面試的你,能搞定的。
最好先去一些小公司看看他們問的哪些東西,自己回去在查漏補缺一下,最後去大廠。
最後祝各位能進入自己心儀的公司。
按照面試的時間順序來一一羅列他記住的面試題
武漢佰鈞成(外包OPPO,自家面試官)
兩輪面試
- Activity的啟動流程
- Activity的啟動模式,應用場景
- 如何減少對第三方框架的耦合
- hashmap的基本原理
博彥科技(外包OPPO,OPPO面試官)
兩輪面試
- Handler機制
- Binder機制
- 寫一個單例模式,DCL為什麼要加V關鍵字
- 直接在Activity Sleep 5000ms,再post一個runable會不會ANR。
- 如何監聽ANR
- View的繪製流程,每個都是幹什麼的
- 事件傳遞機制
Insta360 (C輪公司)
三輪面試
- 元件化如何實現元件通訊
- HashMap基本原理 如何減少hash衝突 如何增大hash衝突
- 安裝包怎麼最佳化的
- 如果有A,B,C,D,E五個步驟,每個步驟都需要操作對應請求,用哪種設計模式。
華為外包
兩輪技術面試
- 安裝包最佳化做了哪些工作
- 對加班怎麼看的
本來一面完了就讓等著二面的,等了十分鐘後跟說二面面試官暫時不在,等下次再約時間,
出門等了10分鐘的公交,離家還有20分鐘的時候,又給他打電話讓他回去參加第二面,
然後就沒去了,太折騰人。
綠網科技
三輪技術面
- hashmap原理
- MVP,MVVM,MVC的區別是什麼
- Java Memory Model的記憶體模型
- 如果讓你設計一個app,打算怎麼設計
- JVM垃圾回收有哪幾種演算法,有哪幾種垃圾回收處理器
- Serial使用的哪一種回收演算法
- JVM的記憶體模型
- Android主執行緒是怎麼啟動的
- dex是如何轉為機器碼的
- llvm編譯是如何最佳化程式碼的
- 說一個你自己的缺點。
同洲電子
四輪技術面
- Activity的啟動流程
- 靜態類的靜態方法能不能被子類重寫(不能,走的invoke-static指令,只有走invoke-virtual指令的才可能實現多型)
- Linux的啟動流程
- 對Native層有沒有興趣
- 對做智慧家居有沒有興趣
- 招一個應屆生進來做app也是做,招你也是做,為什麼要招你
順豐科技
一輪技術面 總共三輪面試
- handler機制
- looper的喚醒是在Java還是Native層,怎麼做到的
- HashMap,ConcurrentHashMap,HashTable有什麼異同
- Binder通訊機制
- 跨平臺開發熟不熟悉
- 如何提高海外使用者的訪問速度,假設伺服器在深圳。
- 如何學習一個新東西,有哪些執行步驟
百度
- 紅包隨機演算法 是怎麼做到的
- 寫一個二叉樹的深度優先遍歷,遞迴 非遞迴
- Android中LocalServerSocket是幹什麼用的
- binder的Native層程式碼看過嗎
- Linux有哪些RPC機制
- 為什麼android使用了Binder機制沒采用共享記憶體
- 如果讓你設計一套程式間通訊的機制,你會怎麼設計
- Linux的模組動態載入機制是怎麼實現的
- 一個物理屏劃分為三個邏輯屏,是靠誰來分發事件的。
- ConcurrentHashMap是不是絕對的執行緒安全。(final,絕對執行緒安全,相對執行緒安全,執行緒不安全)
- 執行緒池是如何管理執行緒狀態的
大宇無限(C輪公司 前身是豌豆莢)
他第二心儀的一家公司,辦公環境,氛圍,福利都特別好 總共七輪面試 五輪技術面
- Kotlin的訪問許可權
- Koltin為什麼比Java更安全
- Koltin比Java好在哪
- JVM的記憶體模型
- JMM的記憶體模型
- 為什麼運算元棧是Thread-Private
- 計算二叉樹的深度
- ArrayList跟LinkeList區別
- ArrayList如何擴容的,如何提高ArrayList的效率
- 動態代理靜態代理區別
- 啟動最佳化怎麼做的。
- 如果給你個IOS APP,你打算怎麼最佳化。
- http有哪幾種版本,版本間有什麼區別。https跟http有什麼區別。
- apk為什麼要簽名,v1跟v2簽名的區別
- apk從編譯打包都安裝的流程
- dex到odex為什麼不能在編譯期最佳化
- 熱修復原理
- 你的優勢是什麼
平安
三輪面試
- http2.0 1.1 1.0的區別
- http如何保證安全性
- 安裝包最佳化有哪幾種方式
- 啟動最佳化有哪幾種方式
- View的繪製流程,每個方法幹什麼的,如果要獲取View的寬高,在哪個方法裡獲取
- 如何應對弱網環境
- android資料儲存方式
- 如果一個app無法訪問網路,你怎麼做資料儲存。
- DVM跟JVM的區別
- React Native跟原生開發的優劣
騰訊
三輪面試 一面
- 演算法題 通電小球
- Android 沉浸式狀態列 怎麼實現的
- 事件處理函式有哪幾個,父View 子View 監聽同一個事件,重寫哪些方法。在哪個View重寫?
- ViewRootImpl接受事件嗎?
- apk編譯打包流程 V1,V2 簽名區別
- 利用logging監聽方法耗時,會不會讓app增大延遲。
- eventbus為什麼要用CopyOnWriteList?
- 外掛化怎麼載入資源的?
- JVM怎麼保證gc效率跟執行緒執行效率的 ?
- 如果android沒用對應的view,flutter能執行嗎? 手寫單例模式,volatile 跟 synchronized區別?
- 介面暴露,但是不讓別人呼叫,有哪些辦法?
二面
- 為什麼採用flatbuffer? 比Json好在哪裡?
- 如何處理Crash,NativeCrash呢?Google是怎麼做到的?如果上報過程中再次產生Crash能不能捕捉到?
- uncaughtException是被誰呼叫的,如果再次崩潰能不能捕獲到?
- Linux是怎麼知道app崩潰的,如果想要在被kill前 做一些耗時操作,該怎麼做?
- 考慮設計一個crash捕捉模組。
- 100萬個數字求100個最大值。
- 手寫快速排序演算法。
三面 (GM面)
- kotlin比Java好在哪裡,是函數語言程式設計嗎?
- 如何防止DNS劫持?
- 如果讓你實現一個偵錯程式,你會怎麼設計?靜態除錯?動態除錯呢?
總結
大廠基本上不太看重具體的技術,無論你是Java還是C++,比較看重思路與抽象的解決方案
如果看到這裡的同學,想在技術上有精進的話,推薦幾本書跟專欄
強烈推薦《深入理解JVM(周志明)》《Android開發藝術探索》《Android核心剖析》
推薦 《Linux鳥哥私房菜》《unix環境高階程式設計》
這幾本有PDF版,需要可以私信我【書籍】檢視
https://shimo.im/docs/x9X6TTW6KqqhHGy6
強烈推薦 極客時間專欄: 《張紹文-Android開發高手課》
這篇專欄非常非常吊 不過要求要有C++跟Linux基礎 而且張紹文自己也在後面講了,如果把他的文章裡講的內容全部摸透,熟悉過了之後,再刷點演算法題,基本上沒有進不去的大廠
還有更多的面試題和演算法題,可以私信我【安卓】或者檢視這篇文章:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952849/viewspace-2669318/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 遊戲行業“凜冬將至”遊戲行業
- 美國專家:人工智慧凜冬將至人工智慧
- 行業陷入“圍城”效應,新茶飲品牌凜冬將至行業
- Android春招面經:二本渣院面試網易被拒,最終終於拿到騰訊+阿里offer(已入職騰訊)Android面試阿里
- 《權力的遊戲 凜冬將至》手遊7月10日不刪檔測試遊戲
- 裸辭兩個月,4面終入職騰訊,半年後我終於把騰訊 Android 高頻面試真題及解析整出來了Android面試
- 半個月6次面試,終於進百度HR面了面試
- 凜冬將至?對網際網路行業人員流動性的一些看法(深度好文)行業
- 32項提名再破艾美獎紀錄!《權力的遊戲 凜冬將至》手遊勢如破竹遊戲
- 堅定深挖IP價值做品類進化 《權力的遊戲 凜冬將至》全境公測9月6日開啟遊戲
- 網遊使用者必須實名!凜冬將至 這些遊戲商在瑟瑟發抖遊戲
- All In智慧駕駛的時代,卻是汽車後市場的凜冬?
- 終於,幫開發寫了一個bug
- 終於,解決了一個大問題
- 集結5月23日,《權力的遊戲 凜冬將至》手遊全境集結 冰火內測重磅開啟遊戲
- 網際網路"凜冬",看大廠HR怎麼說~
- 太難了,我終於把JDBC的程式碼終於優化了!JDBC優化
- 騰訊牛逼!終於開源了自家的 Tencent JDK——Kona!!.mdJDK
- 關注我就能達到大師級水平,這話我終於敢說了
- 遊戲製作工具GameCreator終於與大家見面了遊戲GAM
- 2019遊族年會:以身為焰,守望凜冬,共赴“全力的遊戲”遊戲
- 超前看!匯聚全球頂尖白帽黑客的TCFT 2020終終終終於來了!黑客
- 終於在itpub申請到個人空間了
- 寒冬已至?四面楚歌的Android工程師該何去何從Android工程師
- Android應用總量已經達到70萬款Android
- 花了一個星期,我終於把RPC框架整明白了!RPC框架
- 神祕預言凜冬中2019年的加密貨幣及區塊鏈加密區塊鏈
- 到新公司工作了,終於可以寫部落格了
- 終於可以愉快的擼Java非同步程式碼了!Java非同步
- 終於實現了一門屬於自己的程式語言
- SRG:2020上半年超大規模資料中心數量已達到541個
- 一個前端碼農的 Flutter 實戰經驗前端Flutter
- Flutter終於有視覺化編輯頁面了(Hot UI)Flutter視覺化UI
- 終於看到了一個完整的mutect2使用指令碼指令碼
- Win10螢幕亮度切換終於正常了 這個煩人Bug終於修復了Win10
- 肝了一週的 UDP 基礎知識終於出來了。UDP
- 老碼農吐血建議:2020年,低於1w的程式設計師要注意了...程式設計師
- 終於有了讓程式設計師脫離程式碼的工具了程式設計師