在2019年10月初,公司倒閉,無奈走上找工做的道路,不想本身平時圖安逸,不思進取,再次找工做才發現,android行業也不是站在風口上,豬也能吹上天的世道了.做爲技術小菜的我,再找工做那幾個月真是戰戰兢兢,被打擊得信心全無.記錄下個人面試經歷,分享給須要的人.勉勵本身要時時進步,纔不會被淘汰.
獵豹移動:(有筆試)
- atomicinteger內存模型
- static編譯時有啥不一樣,static 語句塊,static變量,static方法,構造初始化順序(靜態綁定)
- animation和animator的用法,概述實現原理
- Handler,looper,messagequeue,thread,message,每一個類功能,關係?
- Mvc,mvp的差別
- app閃退的緣由有哪些?每種狀況簡述分析過程
- 若是一個app存在多進程,請列出所有的ipc方法
- 操做系統中進程和線程有什麼聯繫和區別,系統何時會在用戶態和內核態中切換?- 如何加載ndk庫?如何在jni中註冊native函數,有幾種註冊方式?
- 一個app若是性能很差,怎麼分析?
-
餓了麼(無筆試)
- 設計的六大原則
- 若是hashmap key不同,可是hashcode同樣會怎麼樣?
- okhttp有什麼優秀的設計模式?builder模式有什麼好處?責任鏈模式有什麼好處?
- 懶漢模式單例爲何加volaitle?
- hashmap是否線程安全?不安全會出什麼問題?
- concurrenthashmap讀寫分別是啥狀況?
- bindservice和startservice生命週期有啥不一樣?
- 廣播有幾種?廣播是觀察者模式?跨進城廣播也是觀察者模式嗎?
- ams是怎麼找到啓動的那個activity的?
- a-b-c界面,其中b是singleinstance的,那麼c界面點back返回a界面,爲何?怎麼管理棧的?
- 紅黑樹有啥特性?
- 在oncreate裏面能夠獲得view的寬高嗎?
- view的getwidth和getmesurewidth有啥區別?
- 遍歷hashmap的原理?
- 23種設計模式
[圖片上傳中...(image-e29a86-1586183428003-2)]java
中園博林(有筆試)
- 如何避免out of menmory和anr?
- arraymap和hashmap的區別?
- 如何實現線程同步?
- 簡述android事件分發機制
- 簡述view繪製流程
- 用兩個棧實現一個隊列
- 口頭問viewpager嵌套滑動衝突怎麼解決?
- svg動畫
- 屬性動畫畫一個拋物線怎麼弄?
-
立思辰(無筆試)
- 爲了適配多分辨率,引入什麼開源框架?
- 閱讀界面書架用什麼控件實現?-佈局怎麼作到每行的文字左右對齊?
- 直播界面,微信對話界面實現?
- 性能優化怎麼弄?
-
vv音樂(有筆試)
- sax解析xml的優勢
- Contentvalue 鍵值類型
- androiddvm的進程與linux的進程說法正確的是?(選擇題)
- Android:gravity和android:layout_gravity的區別?
- assets與res/raw的區別?
- 解釋layout_weight的做用view如何刷新?
- animation.animationlistner幹什麼用的?
- android經常使用佈局及排版效率
- collection與collections的區別
- 匿名內部類是否能夠extends其餘類?是否能夠implement interface(接口)
- 補間動畫常見的效果?有哪幾個常見的插入器?
- override與overload的區別?overloaded的方法是否能夠改變返回值的類型?
- sleep與wait有什麼區別?
- 在android中,請簡述jni的調用過程?請結束android.mk的做用,並試寫一個android.mk文件(包含一個.c源文件便可)
- 冒泡排序(代碼實現)
- 猴子偷桃問題代碼實現
- 給出兩個鏈表的頭指針好比p1,p2,判斷這兩個鏈表是否相交,寫出主要思路便可
口頭問linux
- 簡述封裝,繼承,多態
- 強軟弱虛引用的應用場合輸出一個數組,不重複?(有點忘記題目什麼意思了)
- 用四個線程計算數組和(我說用join方法,或者countdownlatch,他說用線程池便可)
- 什麼叫安全發佈對象(多線程裏面)final?
- 策略模式和命令模式是啥?
- 拓撲排序
- 數組和鏈表在中間位置的插入效率
- binder的原理
- art和dvm在gc上有啥不一樣?有啥改進?
- linux和windows下進程怎麼通訊的?(徹底不瞭解)
- 性能優化作過什麼工做?
- 一個類實現一個接口,接口引用指向這個類對象,能夠不能夠調用它的tostring方法?
- 瀏覽器,輸入url匹配,假設有一億條url緩存,用什麼數據結構匹配?
- recycleview緩存機制相比listview緩存機制有啥改進?
- 一個長度爲10的arraylist和linklist,在第五條插入,哪一個更快?
- 子類複寫父類的equals方法,可是子類增長了一個成員變量int,請問equals方法咋整?
-
大數醫療(有筆試)
- 手寫hashmap
- 寫生產者消費者模式,不可用syncronized
- treemap,hashmap應用場景
-
字節跳動(無筆試)
- dvm和art的區別
- 從framework的角度講activity的啓動流程(冷啓動)
- 手寫算法,二維數組,每一行,每一列都是升序,找出某數的下標,沒有輸出[-1,-1],最好的時間複雜度是m+n(行數+列數)
- zxing二維碼開源框架流程
- contentprovider怎麼升級維護?
- constaintlayout
- bitmap有幾種格式,分別佔多少字節

滴滴出行(無筆試)
- android事件分發機制,如何下發,如何上傳?
- 一個界面下拉刷新要怎麼實現?
- bitmap佔用內存多少怎麼計算?一個像素佔幾個字節?
- threadlocal的原理?
- framework加載activity的流程
- arraylist和linkedlist的應用場景
- 網絡請求相關的框架
- 好幾萬條短信,滑動卡頓怎麼解決?
- 有沒有了解過三方開源數據庫(好像是騰訊的什麼數據庫框架,不只僅是懂sqlite)
- 避免內存泄漏,爲何說handler用成員內部類會內存泄漏?activity不是已經到gcroot被切斷了嗎?還有靜態context持有activity的引用會內存泄漏,必需要持有怎麼辦?(及時釋放)
- 計算viewgroup的層級,遞歸實現和非遞歸實現
- 本身寫一個應用,包名就叫android行不行,爲何?
- 主線程looper若是沒有消息,就會阻塞在那,爲何不回anr?
- 系統進程能夠用webview嗎?
- 原子類的瞭解一個app多進程的好處
- 一個arraylist,裏面所有是int,講全部值是2的整數的節點刪除
- arraymap瞭解
- binder機制
- shareprefrence原理?是否線程安全和進程安全?
- 一個app啓動頁另開一個進程,啓動頁10s後啓動mainactivity,請問5s的時候有幾個進程?
- java內存結構,內存模型
-
融雲(有筆試)
梧桐車聯(電話面試沒過)
- 爲何要引入activity這個組件
- shareprefrence不是進程安全,假設一個apk兩個進程同時修改shareprefrence怎麼辦?
- contenprovider已是進程間通訊,爲何還要引入broadcastreceiver?
- a啓動b,b啓動c,怎樣能夠在c界面點back退回到a?
- startservice和bindservice生命週期有什麼不一樣?
- 兩個應用同時註冊一個廣播,優先級都同樣,哪一個會先收到廣播?(有序廣播?)
- 還有些其餘的,忘記了
-
螞蟻金服(電話面試沒過)
- threadlocal原理
- zxing有過優化提升識別率嗎?

京東
- arraylist裏面能夠不能夠new一個t泛型的數組?
- 補間動畫click事件還在原位怎麼解決?
- 多線程併發
- 隔代數據庫升級
- 性能優化
文章不易,若是你們喜歡這篇文章,或者對你有幫助但願你們多多點贊,轉發,關注哦。文章會持續更新的。絕對乾貨!!!