衝刺2021 Android面試之Activity

其他面試題推薦:衝刺2021 Android面試之Handler
衝刺2021專欄會一直更新,歡迎收藏

基礎篇

Activity生命週期是什麼,可以簡單聊一下嗎?

1、Activity的四種狀態
running / paused / stopped / killed

狀態 說明
running Activity此時處於棧頂,可以與用戶交互
paused 一般是Activity失去焦點時候的狀態,被一個非全屏或者透明的Activity覆蓋,此時Activity及其所有內存信息成員變量都存在
stopped 一般是被一個全屏的Activity覆蓋,此時Activity及其所有內存信息成員變量都存在
killed 顧名思義,Activity及其所有內訓信息被銷燬

2、Activity生命週期
Activity啓動:onCreate() onStart() onResume()
點Home返回桌面:onPause() onStop() 注意:onPause執行完成纔會跳轉
再次回到Activity:onRestart() onStart() onResume()
退出當前Activity:onPause() onStop() onDestory()
注意:
① MainActivity 啓動 SecondActivity 過程中,生命週期的變化

Main.onCreate()---->Main.onStart()---->Main.onResume()-----“點擊按鈕,開啓一個新的Activity”------>Main.onPause()---------> Second.onCreate()----> Second.onStart()----> Second.onResume()---->Main.onStop()-------“到此,MainActivity 啓動 SecondActivity 過程中就執行完畢”

② 點擊Back按鈕 回到前一個Activity時,SecondActivity 返回 MainActivity 過程中,生命週期的變化

“點擊Back按鈕”--------->Second.onPause()---->Main.onReStart()---->Main.onStart()---->Main.onResume()---->Second.onStop()---->Second.onDestory()

3、Android中進程優先級
前臺>可見>服務>後臺>空

Android任務棧你知道哪些?

顧名思義,Android任務棧是一個棧結構,符合後進先出的規律。用這個棧存儲Activity,用於管理Activity。在退出應用程序時需要安全的將所有Activity清除出棧纔算退出。
一個Activity可以有一個或多個任務棧,因爲啓動模式SingleInstance的存在。

Activity的啓動模式?

啓動模式 說明
Standard(標準模式) 每一次創建Activity都會創建一個新的Activity
SingleTop(棧頂複用模式) 當創建的Activity在棧頂時複用此Activity
SingleTask(棧內複用模式) 當創建的Activity在此任務棧時複用此Activity且此Activity之上的Activity出棧
SingleInstance(獨享棧模式) 創建的Activity會在一個新棧中創建 使用場景:A啓動了B,此時A定時任務啓動了C,C爲獨享棧模式,則當C銷燬時會返回B而不是A

Scheme跳轉協議是什麼,你使用過嗎?

scheme跳轉協議是一種頁面內跳轉協議,通過定義自己的scheme協議,可以非常方便的跳轉App中的各種頁面;通過scheme協議,服務器可以定製化的告訴App跳轉到哪個頁面,可以通過通知欄消息定製跳轉頁面,也可以通過H5頁面跳轉頁面。

進階篇

待更新

發佈了28 篇原創文章 · 獲贊 12 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章