三月份字節(jié)最新Android面試題(附答案)

除了需要掌握牢固的專業(yè)技術(shù)之外,還需要刷更多的面試去在眾多的面試者中殺出重圍。
小編特意整理了110道Android面試題,送給大家,希望大家都能順利通過(guò)面試,拿下高薪。趕緊拿去吧~~文末有答案領(lǐng)取方式!
Q1.組件化和arouter原理
Q2.自定義view,中英文字符串寬高測(cè)量顯示,測(cè)量算法,可擴(kuò)展性
Q3.glide流程,緩存前壓縮,緩存命中
Q4.Synchronized底層原理,java鎖機(jī)制
Q5.recyclerview和listview區(qū)別
Q6.APP性能優(yōu)化,內(nèi)存優(yōu)化,布局優(yōu)化,繪制優(yōu)化,內(nèi)存泄漏
Q7.Http和Https區(qū)別
Q8.ArrayList和LinkendList區(qū)別,List泛型擦除,為什么反射能夠在ArrayList< String >中添加int類型
Q9.Android 版本差異
Q10.Activity和fragment生命周期區(qū)別,fragment正常添加和viewpager添加的區(qū)別,fragment懶加載原理,F(xiàn)ragmentPagerAdapter 和 FragmentStatePagerAdapter
Q11.socket心跳包
Q12.jvm虛擬機(jī),堆和棧的結(jié)構(gòu)
Q13.自定義view,中英文字符串寬高測(cè)量顯示,測(cè)量算法,可擴(kuò)展性
Q14.事件分發(fā)機(jī)制
Q15.Activity,view,window聯(lián)系
Q16.熱修復(fù)和插件化原理
Q17.java容器,hashmap和hashtable區(qū)別,hashmap原理,擴(kuò)容流程,擾動(dòng)算法的優(yōu)勢(shì)
Q18.view繪制原理 (可以先說(shuō)下基本view繪制,然后再說(shuō)下屏幕刷新機(jī)制)
Q19.熟悉的設(shè)計(jì)模式
Q20.ArrayList和LinkendList區(qū)別,List泛型擦除,為什么反射能夠在ArrayList< String >中添加int類型
Q21.基礎(chǔ)類型字節(jié),漢字占幾個(gè)字節(jié),線程和進(jìn)程
Q22.四大組件,fileprovider和Contentprovide區(qū)別,activity啟動(dòng)流
Q23.MVC,MVP,MVVM
Q24.TCP三次握手,四次揮手
Q25.Eventbus,glide原理
Q26性能優(yōu)化,內(nèi)存抖動(dòng),內(nèi)存泄漏,內(nèi)存溢出,handler機(jī)制,IntentService和handlerThread,子線程更新view內(nèi)容的方法
Q27.GC回收算法
Q28.recyclerview和listview區(qū)別
Q29.組件化,模塊化,插件化,熱修復(fù)
Q30.工作中遇到的難題怎么解決的
Q31.Kotlin Java優(yōu)缺點(diǎn),kotlin什么時(shí)候用分號(hào),run,with,apply,內(nèi)聯(lián)函數(shù),高階函數(shù)
Q32.APK體積優(yōu)化
Q33.進(jìn)程間通信
Q34.單例模式,哪些是安全的
Q35.retrofit設(shè)計(jì)模式
Q36.自定義view
Q37.是否做過(guò)音視頻和IM?
Q38.APK性能優(yōu)化
Q39.CurrentHashMap1.7和1.8區(qū)別
Q40.volatile關(guān)鍵字的作用,怎么保證原子性呢?
Q41.網(wǎng)絡(luò)優(yōu)化
Q42.對(duì)新技術(shù)的看法
Q43.java泛型,協(xié)變和逆變
Q44.組件化,arouter,組件化UI,還有哪些路由框架。AS調(diào)試方法
Q45.MVC,MVP,MVVM,Jetpack
Q46.JVM,JMM,java加載對(duì)象的步驟,classLoader,GC回收算法
Q47.插件化和熱修復(fù)
Q48.唯一安卓ID,安卓安全的知識(shí),加密算法,判斷activity前臺(tái)進(jìn)程
Q49.APP性能優(yōu)化,webview相關(guān),webview優(yōu)化,webview中Android與js互調(diào)
Q50.hash算法,hashmap,怎么解決hash沖突
Q51.加載大圖,glide緩存機(jī)制,設(shè)計(jì)模式,雙重檢測(cè)的單例模式為什么要檢查兩次,自己設(shè)計(jì)圖片加載框架思路
Q52.HTTPS具體步驟
Q53.常用的設(shè)計(jì)模式,代理模式和裝飾者模式區(qū)別
Q54.服務(wù)端返回錯(cuò)誤的json數(shù)據(jù),客戶端怎么自定義model,避免出錯(cuò)
Q55.Hook技術(shù)
Q56.kotlin了解,協(xié)程
Q57.屏幕適配
Q58.抓包工具使用和原理
Q59.網(wǎng)絡(luò)優(yōu)化
Q60.Okhttp,rxjava,glide,retrofit等原理,okhttp底層數(shù)據(jù)傳輸原理,http報(bào)文體結(jié)構(gòu)
Q61.APK體積優(yōu)化
Q62.組件化,arouter,組件化UI,還有哪些路由框架。AS調(diào)試方法
Q63.MVC,MVP,MVVM,Jetpack
Q64.JVM,JMM,java加載對(duì)象的步驟,classLoader,GC回收算法
Q65.插件化和熱修復(fù)
Q66.唯一安卓ID,安卓安全的知識(shí),加密算法,判斷activity前臺(tái)進(jìn)程
Q67.static、final;繼承與多態(tài)
Q68.hash算法,hashmap,怎么解決hash沖突
Q69.加載大圖,glide緩存機(jī)制,設(shè)計(jì)模式,雙重檢測(cè)的單例模式為什么要檢查兩次,自己設(shè)計(jì)圖片加載框架思路
Q70.啟動(dòng)未注冊(cè)的Activity
Q71.AOP,藍(lán)牙開(kāi)發(fā),IOT
Q72.glide緩存清除:lrucache算法
Q73.glide緩存文件太大,查找效率慢怎么優(yōu)化?glide下載高清圖片優(yōu)化
Q74.Android jetpack使用和原理,新技術(shù)看法
Q75.crashHandler獲取應(yīng)用crash信息
Q76.recyclerview和listview緩存區(qū)別
Q77.Android 常見(jiàn)崩潰問(wèn)題分析及一般的解決方案
Q78.NestedScrollView觸摸機(jī)制,AOP相關(guān)知識(shí)
Q79.設(shè)計(jì)APP,整體架構(gòu)選型
Q80.Android沙盒和底層Linux通信
Q81.ACTION_CANCLE什么時(shí)候觸發(fā)
Q82.線程池原理
Q83.hashmap原理,arraymap原理,對(duì)比性能。
Q84.hashmap為什么大于8才轉(zhuǎn)化為紅黑樹(shù),加載因子為什么是0.75
Q85.Synchronized底層原理,java鎖機(jī)制
Q86.服務(wù)和廣播
Q87.activity啟動(dòng)模式(給例子具體分析,A(標(biāo)準(zhǔn))-》B(單例)-》C(singleTop)-》D(singleTask),分析有幾個(gè)棧,每個(gè)棧內(nèi)的activity)
Q88.常用設(shè)計(jì)模式,線程安全的單例模式
Q89.fragment周期,兩個(gè)fragment切換周期變化,fragment通信
Q90.https證書(shū)校驗(yàn),加密相關(guān),網(wǎng)絡(luò)請(qǐng)求框架
Q91.glide加載流程,大圖顯示,圖片大小計(jì)算
Q92.view繪制(從onSync()開(kāi)始)
Q93.線程內(nèi)存模型,線程間通信
Q94.獲取view的寬高,更新view的方式,主線程消息機(jī)制
Q95.OOM,內(nèi)存泄漏,內(nèi)存溢出,java引用類型,ANR分析
Q96.Binder有什么優(yōu)勢(shì)?
Q97.Binder機(jī)制需要多少次內(nèi)存拷貝
Q98.Binder是如何做到一次拷貝?
Q99.Android有很多跨進(jìn)程通信方法,為何選擇Binder?
Q100.MMAP的原理講解
Q101.Binder機(jī)制是如何跨進(jìn)程的
Q102.描述AIDL生成的java類細(xì)節(jié)
Q103.SharedPreference是線程安全的嗎?
Q104.SharedPreference的apply和commit的區(qū)別?commit 一定會(huì)在主線程操作嘛
Q105.SharedPreferences 是如何初始化的,它會(huì)阻塞主線程嗎?
Q106.每次獲取 SP 對(duì)象真的會(huì)很慢嗎?
Q107.在使用時(shí)需要注意哪些問(wèn)題,以及有什么優(yōu)化點(diǎn)呢?
Q108.請(qǐng)介紹View的三大繪制流程
Q109.你知道View繪制前的準(zhǔn)備流程嗎?
Q110.什么是MeasureSpec?
總結(jié):
由于文章篇幅有限,答案加里面會(huì)很亂,也選取了其中最常見(jiàn)的110道題,一共有四百頁(yè)的面試題,里面包含了Java基礎(chǔ),Android基礎(chǔ), ?Activity, Service, ? BroadcastReceiver, ? ContentProvider, ? Handler, ? View繪制, ? View事件分發(fā), ? Binder, ? 性能優(yōu)化, ? BroadcastReceiver, ? Viewpager&Fragment, ? WebView等等一些常見(jiàn)的面試題。
掃描下面二維碼既可以獲取這份面試題,備注B站
