最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

安卓面經(jīng)_Android面經(jīng)_150道安卓基礎(chǔ)面試題

2023-01-30 09:59 作者:SKY763450633  | 我要投稿

系列專(zhuān)欄:

  • 安卓系統(tǒng)Framework面經(jīng)專(zhuān)欄鏈接:https://blog.nowcoder.net/zhuanlan/Mde2W0

  • 安卓系統(tǒng)Framework面經(jīng)目錄詳情:https://www.nowcoder.com/discuss/456922214454091776

  • 安卓高頻面經(jīng)解析大全專(zhuān)欄鏈接:https://blog.nowcoder.net/zhuanlan/80aJVm

  • 安卓高頻面經(jīng)解析大全目錄詳情:https://www.nowcoder.com/discuss/396383934924292096

  • 嵌入式面經(jīng)解析大全專(zhuān)欄鏈接:https://blog.nowcoder.net/zhuanlan/3m2ONj

  • 嵌入式面經(jīng)解析大全目錄詳情:https://www.nowcoder.com/discuss/419423154676789248

本人是2020年畢業(yè)于廣東工業(yè)大學(xué)研究生:許喬丹,有國(guó)內(nèi)大廠(chǎng)CVTE和世界500強(qiáng)企業(yè)安卓開(kāi)發(fā)經(jīng)驗(yàn),該專(zhuān)欄整理本人對(duì)常見(jiàn)安卓高頻開(kāi)發(fā)面試題的理解;

網(wǎng)上安卓資料千千萬(wàn),筆者將繼續(xù)維護(hù)專(zhuān)欄,一杯奶茶價(jià)格不止提供答案解析,更有專(zhuān)欄內(nèi)容免費(fèi)技術(shù)答疑。助您提高安卓面試準(zhǔn)備效率,為您面試保駕護(hù)航!

目錄

第一部分:四大組件篇

1、Activity

  • 請(qǐng)介紹Activity的生命周期??????

  • 請(qǐng)介紹Activity的4種啟動(dòng)模式?????

  • 請(qǐng)說(shuō)下切換橫豎屏?xí)r Activity的生命周期變化?????

2、Service

  • 請(qǐng)介紹Service的啟動(dòng)方式,啟動(dòng)方式的區(qū)別???????

  • 請(qǐng)介紹Service的生命周期??????

  • Activity、Service、intent之間的聯(lián)系?????

  • 在Activity和Service中創(chuàng)建Thread的區(qū)別?(進(jìn)階題)???

  • android進(jìn)程的優(yōu)先級(jí)?以及如何保證Service不被殺死?(進(jìn)階題)????

3、BroadCast

  • 請(qǐng)介紹Android里廣播的分類(lèi)?????

  • 程序A能否接收到程序B的廣播????

  • 請(qǐng)列舉廣播注冊(cè)的方式,并簡(jiǎn)單描述其區(qū)別??????

4、內(nèi)容提供者

  • 什么是內(nèi)容提供者??????

  • 簡(jiǎn)單介紹下 ContentProvider 是如何實(shí)現(xiàn)數(shù)據(jù)共享的(原理)?????

  • 說(shuō)說(shuō) ContentProvider、ContentResolver、ContentObserver 之間的關(guān)系?????

  • 說(shuō)說(shuō)如何創(chuàng)建自己應(yīng)用的內(nèi)容提供者的使用場(chǎng)景。???

  • 說(shuō)說(shuō)ContentProvider的權(quán)限管理。???

  • 為什么要使用通過(guò)ContentResolver類(lèi)從而與ContentProvider類(lèi)進(jìn)行交互,而不直接訪(fǎng)問(wèn)ContentProvider類(lèi)????

  • ContentProvider的底層是采用Android中的Binder機(jī)制,既然已經(jīng)有了binder實(shí)現(xiàn)了進(jìn)程間通信了為什么還會(huì)需要contentProvider?????

第二部分:Android基礎(chǔ)知識(shí)篇

5、Context

  • 談?wù)勀銓?duì)Activity的Context的認(rèn)識(shí)??????

  • Application和Activity,Context的區(qū)別??????

  • getApplication()和getApplicationContext()的區(qū)別?????

  • context錯(cuò)誤用法有哪些????

  • 如何正確使用Context,如何獲取Context?????

  • 一個(gè)應(yīng)用程序有幾個(gè)Context? ????

6、Intent

  • 什么是Intent? ?????

  • 顯式Intent和隱式Intent的區(qū)別?????

  • 在隱式啟動(dòng)中Intent可以設(shè)置多個(gè)action,多個(gè)category嗎?????

  • 隱式Intent的匹配規(guī)則??????

  • Activity之間傳遞數(shù)據(jù)的方式Intent是否有大小限制,如果傳遞的數(shù)據(jù)量偏大,有哪些方案????

7、8、Handler異步消息機(jī)制

  • 請(qǐng)介紹下Handler消息機(jī)制 ?????

  • Handler 引起的內(nèi)存泄露原因以及最佳解決方案 ?????

  • 為什么我們能在主線(xiàn)程直接使用 Handler,而不需要?jiǎng)?chuàng)建 Looper ? ?????

  • Handler、Thread和HandlerThread的差別 ????

  • 子線(xiàn)程中怎么使用 Handler? ????

  • 為什么在子線(xiàn)程中創(chuàng)建 Handler 會(huì)拋異常?????

  • Handler 里藏著的 Callback 能干什么????

  • Handler 的 send 和 post 的區(qū)別?????

  • 創(chuàng)建 Message 實(shí)例的最佳方式 ???

  • Message 的插入以及回收是如何進(jìn)行的,如何實(shí)例化一個(gè) Message 呢????

  • 妙用Looper機(jī)制,或者你知道Handler機(jī)制的其他用途嗎????

  • Looper.loop()死循環(huán)一直運(yùn)行是不是特別消耗CPU資源呢?不會(huì)造成應(yīng)用卡死嗎??????

  • MessageQueue 中如何等待消息?為何不使用 Java 中的 wait/notify 來(lái)實(shí)現(xiàn)阻塞等待呢???

  • 你知道延時(shí)消息的原理嗎?????

  • handler postDelay這個(gè)延遲是怎么實(shí)現(xiàn)的?????

  • 如何保證在msg.postDelay情況下保證消息次序????

  • 更新UI的方式有哪些 ????

  • 線(xiàn)程、Handler、Looper、MessageQueue 的關(guān)系?????

  • 多個(gè)線(xiàn)程給 MessageQueue 發(fā)消息,如何保證線(xiàn)程安全????

  • View.post 和 Handler.post 的區(qū)別????

  • 你知道 IdleHandler 嗎???

9、HandlerThread

  • HandlerThread是什么??????

  • HandlerThread原理和使用場(chǎng)景?????

10、AsyncTask

  • AsyncTask是什么?能解決什么問(wèn)題 ????

  • 給我談?wù)凙syncTask的三個(gè)泛型參數(shù)作用以及它的一些方法作用。???

  • 給我說(shuō)說(shuō)AsyncTask的原理。???

  • 你覺(jué)得AsyncTask有不足之處嗎?有何使用注意事項(xiàng)????

11、IntentService

  • IntentService是什么??????

  • IntentService原理和使用場(chǎng)景?????

  • IntentService和Service的區(qū)別 ?????

12、Fragment

  • Fragment是什么?和Activity的聯(lián)系?生命周期如何???????

  • Activity和Fragment之間如何通訊?Fragment和Fragment之間如何通訊??????

  • Fragment的回退棧了解嗎?????

  • Fragment的使用方式???

  • 你有遇到過(guò)哪些關(guān)于Fragment的問(wèn)題,如何處理的????

13、Binder

  • 請(qǐng)介紹什么是Binder機(jī)制?????

  • 請(qǐng)介紹Binder機(jī)制流程 ????

  • Binder機(jī)制需要多少次內(nèi)存拷貝 ???

  • Android有很多跨進(jìn)程通信方法,為何選擇Binder????

14、AIDL

  • 請(qǐng)介紹什么是AIDL?????

  • 有幾種AIDL文件????

  • 一個(gè)程序AIDL文件的數(shù)量? ??

  • 你有沒(méi)有使用過(guò)AIDL?談?wù)勀闳绾螌?shí)現(xiàn)的? ????

  • 知道AIDL語(yǔ)法中的定向tag嗎????

  • 你能不能簡(jiǎn)單描述AIDL實(shí)現(xiàn)的原理????

15、SharedPreferences

  • SharedPreference是線(xiàn)程安全的嗎????

  • SharedPreference的apply和commit的區(qū)別?commit 一定會(huì)在主線(xiàn)程操作嘛??????

  • SharedPreferences 是如何初始化的,它會(huì)阻塞主線(xiàn)程嗎????

  • 每次獲取 SP 對(duì)象真的會(huì)很慢嗎????

  • 在使用時(shí)需要注意哪些問(wèn)題,以及有什么優(yōu)化點(diǎn)呢?????

16、線(xiàn)程池

  • 線(xiàn)程池的種類(lèi)?????

  • 線(xiàn)程池的優(yōu)點(diǎn)????

  • 平時(shí)當(dāng)中使用案例????

  • ThreadPoolExecutor類(lèi)有了解嗎???

第三部分:View相關(guān)篇

17、Activity、Window、DecorView以及ViewRoot層級(jí)關(guān)系

  • 請(qǐng)講述Activity、Window、DecorView以及ViewRoot之間的層級(jí)關(guān)系?????

  • DecorView什么時(shí)候可見(jiàn)?????

18、觸摸事件分發(fā)機(jī)制

  • 請(qǐng)介紹什么是事件分發(fā)機(jī)制,以及對(duì)應(yīng)流程?????

  • 談?wù)勀銓?duì)MotionEvent的認(rèn)識(shí)?Cancel事件是什么情況下觸發(fā)的???

  • OnTouchListener & OnTouchEvent & OnClickListener三者之間的關(guān)系????

19、View繪制流程

  • 請(qǐng)介紹View的三大繪制流程 ?????

  • 你知道View繪制前的準(zhǔn)備流程嗎??

  • 什么是MeasureSpec????

  • 測(cè)量模式有哪三種???

  • 為什么有時(shí)候getMeasuredWidth獲取值為0???

  • 繪制的順序是怎么樣???

20、自定義View

  • 自定義View的流程 ?????

  • 自定義View需要重寫(xiě)哪些函數(shù)?說(shuō)說(shuō)你在自定義View時(shí)常常重寫(xiě)的一些方法? ????

  • 自定義View的種類(lèi)有哪些?給我說(shuō)說(shuō)你之前項(xiàng)目中的案例。????

  • 說(shuō)說(shuō)自定義View中如何自定義屬性????

  • 自定義View如何處理padding???

  • 自定義View效率高于xml布局文件嗎???

  • 自定義View什么時(shí)候需要處理wrap_content屬性?怎么處理??

第四部分:Android進(jìn)階篇

21、序列化

  • 序列化是什么?????

  • 序列化的作用?什么時(shí)候需要序列化? ????

  • Android中序列化方式有幾種?說(shuō)說(shuō)它們的區(qū)別。?????

  • Bunder傳遞對(duì)象為什么需要序列化????

22、JNI/NDK

  • 什么是JNI?它主要用來(lái)干什么。 ?????

  • Java 聲明的Native方法如何和Native層的Native函數(shù)進(jìn)行綁定的?(也就是介紹兩種注冊(cè)方法)?????

  • JNI如何實(shí)現(xiàn)數(shù)據(jù)傳遞?????

  • 如何全局捕獲Native發(fā)生的異常????

  • JNIEnv與JavaVM的關(guān)系????

  • C和C++的JNIEnv的區(qū)別 ???

  • JNI項(xiàng)目配置和數(shù)據(jù)映射 ??

23、設(shè)計(jì)模式使用案例

  • 說(shuō)說(shuō)設(shè)計(jì)模式的六大原則。???

  • 請(qǐng)簡(jiǎn)要談一談單例模式??????

  • 請(qǐng)列出幾種常見(jiàn)的工廠(chǎng)模式并說(shuō)明它們的用法?????

  • 靜態(tài)代理和動(dòng)態(tài)代理的區(qū)別,什么場(chǎng)景使用??????

  • 談一談責(zé)任鏈模式的使用場(chǎng)景????

  • 請(qǐng)講講你會(huì)使用的一些設(shè)計(jì)模式?????

  • 能否給我說(shuō)說(shuō)Android中至少3個(gè)用到設(shè)計(jì)模式的例子? ?????

24、APK啟動(dòng)流程

  • 你知道桌面點(diǎn)擊應(yīng)用圖標(biāo)到應(yīng)用顯示期間系統(tǒng)實(shí)現(xiàn)了什么流程嗎?????

  • 冷啟動(dòng)和熱啟動(dòng)的區(qū)別 ??

  • 桌面點(diǎn)擊啟動(dòng)APP和從另一個(gè)程序跳轉(zhuǎn)過(guò)去有什么區(qū)別???

25、MVC、MVP、MVVM

  • 說(shuō)說(shuō)你對(duì)MVC、MVP、MVVM的理解,他們有什么區(qū)別和聯(lián)系,如何演變的? ?????

  • MVVM的優(yōu)點(diǎn)和缺點(diǎn) ????

  • 為什么Activity旋轉(zhuǎn)屏幕后ViewModel可以恢復(fù)數(shù)據(jù) ??

  • ViewModel 的實(shí)例緩存到哪兒了 ??

  • 什么時(shí)候 ViewModel#onCleared() 會(huì)被調(diào)用 ??

26、緩存機(jī)制

  • 你了解Android中的緩存機(jī)制嗎?????

  • LruCache的源碼看過(guò)嗎????

  • 還有用過(guò)哪些緩存工具?????

27、APK打包流程和反編譯

  • 請(qǐng)講述一下APK打包的流程? ????

  • 使用過(guò)哪些反編譯的工具????

28、注解

  • 你是否了解注解??????

  • 你知道元注解嗎????

  • 知道如何使用自定義注解嗎?有哪些實(shí)現(xiàn)方法?????

  • 具體說(shuō)一下編譯時(shí)注解的實(shí)現(xiàn)思路????

  • 如何使用注解代替枚舉????

  • 你知道哪些常用的注解?????

第五部分:Android性能優(yōu)化篇

29、內(nèi)存優(yōu)化

  • 什么是OOM、內(nèi)存泄漏、內(nèi)存抖動(dòng)?如何發(fā)生的? ?????

  • Handler導(dǎo)致的內(nèi)存泄露你是如何解決的? ????

  • 知道如何定位內(nèi)存泄漏嗎?有什么工具?????

  • 請(qǐng)至少例舉出5種內(nèi)存泄漏情況。?????

  • 在 Android 中如何避免內(nèi)存泄漏??????

  • 談?wù)勀沩?xiàng)目中內(nèi)存優(yōu)化的一些經(jīng)驗(yàn)(開(kāi)放題)???

30、卡頓優(yōu)化

  • 造成系統(tǒng)卡頓的根本原因 ???

  • 什么是 ANR ?導(dǎo)致原因有哪些??????

  • 如何避免發(fā)生 ANR ?????

  • 分別說(shuō)說(shuō)Activity、BroadcastReceiver、Serice最長(zhǎng)可耗時(shí)時(shí)間為多少??????

  • 談?wù)勀沩?xiàng)目中避免ANR的一些經(jīng)驗(yàn)(開(kāi)放題)??

  • 有什么方法和工具可以分析ANR ???

alt




安卓面經(jīng)_Android面經(jīng)_150道安卓基礎(chǔ)面試題的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
依安县| 清水河县| 疏勒县| 金湖县| 措美县| 社会| 湄潭县| 湖南省| 凉城县| 南安市| 泽普县| 龙川县| 贵州省| 和田县| 陆丰市| 呼图壁县| 志丹县| 安吉县| 永城市| 新竹县| 锡林浩特市| 岢岚县| 浪卡子县| 石嘴山市| 高要市| 灵武市| 介休市| 安塞县| 南岸区| 江北区| 乡城县| 南通市| 鸡东县| 锡林浩特市| 鸡西市| 琼中| 昭通市| 荃湾区| 平安县| 冷水江市| 容城县|