Android知識點最新最全梳理—Android面試大綱
熱文導讀 | 點選標題閱讀
公眾號:Java和Android架構
關注回覆:Android,iOS,PHP,js,HTML5,Python,機器學習 ,AI,大資料,Hadoop,c++,J2EE等關鍵字就能免費獲取學習資料視訊
文章目錄如下:
-
Activity面試題
-
Fragment面試題
-
Service面試題
-
Broadcast Receiver面試題
-
WebView面試題
-
Binder面試題
-
Handler面試題
-
AsyncTask面試題
-
HandlerThread面試題
-
IntentService面試題
-
檢視工作機制面試題
-
事件分發機制面試題
-
ListView面試題
-
Android專案構建面試題
-
ANR面試題
-
OOM面試題
-
Bitmap面試題
-
UI卡頓面試題
-
記憶體洩漏面試題
-
記憶體管理面試題
-
冷啟動和熱啟動面試題
-
其他優化面試題
-
架構模式面試題
-
外掛化面試題
-
熱更新面試題
-
程序保活面試題
-
Lint面試題
-
Kotlin面試題
1、Activity是什麼
Activity是四大元件之一,它提供一個介面讓使用者點選和各種滑動操作,這就是Activity
2、Activity四種狀態
-
runing
-
paused
-
stopped
-
killed
3、Activity生命週期
-
onCreate()
-
onStart()
-
onResume()
-
onPause()
-
onStop()
-
onDestroy()
-
onRestart()
4、程序的優先順序
-
空程序
-
後臺程序
-
服務程序
-
可見程序
-
前臺程序
5、Activity任務棧
-
先進後出
6、Activity啟動模式
-
standard
-
singletop
-
singletask
-
singleinstance
7、scheme跳轉協議
Android中的scheme是一種頁面內跳轉協議,通過定義自己的scheme協議,可以跳轉到app中的各個頁面
-
伺服器可以定製化告訴app跳轉哪個頁面
-
App可以通過跳轉到另一個App頁面
-
可以通過H5頁面跳轉頁面
1、Fragment為什麼被稱為第五大元件
Fragment比Activity更節省記憶體,其切換模式也更加舒適,使用頻率不低於四大元件,且有自己的生命週期,而且必須依附於Activity
2、Activity建立Fragment的方式
-
靜態建立
-
動態建立
3、FragmentPageAdapter和FragmentPageStateAdapter的區別
-
FragmentPageAdapter在每次切換頁面的的時候,是將Fragment進行分離,適合頁面較少的Fragment使用以儲存一些記憶體,對系統記憶體不會多大影響
-
FragmentPageStateAdapter在每次切換頁面的時候,是將Fragment進行回收,適合頁面較多的Fragment使用,這樣就不會消耗更多的記憶體
4、Fragment生命週期
-
onAttach()
-
onCreate()
-
onCreateView()
-
onActivityCreated()
-
onStart()
-
onResume()
-
onPause()
-
onStop()
-
onDestroyView()
-
onDestroy()
-
onDetach()
5、Fragment的通訊
-
Fragment呼叫Activity中的方法:getActivity
-
Activity呼叫Fragment中的方法:介面回撥
-
Fragment呼叫Fragment中的方法:FragmentManager.findFragmentById
6、Fragment的replace、add、remove方法
-
replace:替代Fragment的棧頂頁面
-
add:新增Fragment到棧頂頁面
-
remove:移除Fragment棧頂頁面
1、Service是什麼
Service是四大元件之一,它可以在後臺執行長時間執行操作而沒有使用者介面的應用元件
2、Service和Thread的區別
-
Service是安卓中系統的元件,它執行在獨立程序的主執行緒中,不可以執行耗時操作。Thread是程式執行的最小單元,分配CPU的基本單位,可以開啟子執行緒執行耗時操作
-
Service在不同Activity中可以獲取自身例項,可以方便的對Service進行操作。Thread在不同的Activity中難以獲取自身例項,如果Activity被銷燬,Thread例項就很難再獲取得到
3、Service啟動方式
-
startService
-
bindService
4、Service生命週期
-
startService
-
onCreate()
-
onStartCommand()
-
onDestroy()
-
-
bindService
-
onCreate()
-
onBind()
-
onUnbind()
-
onDestroy()
-
1、Broadcast Receiver是什麼
Broadcast是四大元件之一,是一種廣泛運用在應用程式之間傳輸資訊的機制,通過傳送Intent來傳送我們的資料
2、Broadcast Receiver的使用場景
-
同一App具有多個程序的不同元件之間的訊息通訊
-
不同App之間的元件之間的訊息通訊
3、Broadcast Receiver的種類
-
普通廣播
-
有序廣播
-
本地廣播
-
Sticky廣播
4、Broadcast Receiver的實現
-
靜態註冊:註冊後一直執行,儘管Activity、程序、App被殺死還是可以接收到廣播
-
動態註冊:跟隨Activity的生命週期