標籤:oncreate binder inf on() 標準 調用 基礎 blog 系統
1、Activity問題講解
a) Activity的生命週期
1.Activity的4種狀態
running / paused / stopped / killed
running:activity處於活動狀態,使用者可以點擊螢幕,螢幕做出響應,此時該activity處於棧頂
paused:activity失去焦點,使用者不能點擊,或者被一個非全屏activity佔據、透明介面放入棧頂
stopped:當該activity被完全覆蓋
killed:被android系統回收
2.Activity的生命週期
Activity啟動->onCreate()->onStart()->onReasume()
點擊Home鍵回到主介面(Activity不可見)->onPause()->onStop()
當我們再次回到原activity時->onRestart()->onStart()->onReasume()
退出當前activity時->onPause()->onStop()->onDestroy()
3.Android進程優先順序
前台進程:正在前台和使用者互動的activity或者是和前台activity綁定的service
可見進程:處於前台但是使用者不能點擊
服務進程:在後台開啟一個服務
後台進程:前台進程點擊hone鍵後就變成了後台進程
空進程:不屬於前面四種進程,android系統隨時可以殺掉
b) Android的任務棧
c) Activity啟動模式
standard 標準模式:預設的啟動模式
singleTop 棧頂複用模式:須要建立的Activity已經處於棧頂時,此時會直接複用棧頂的Activity。不會再建立新的Activity;若須要建立的Activity不處於棧頂,此時會又一次建立一個新的Activity入棧,同Standard模式一樣
singleTask 棧內複用模式:若須要建立的Activity已經處於棧中時,此時不會建立新的Activity,而是將存在棧中的Activity上面的其他Activity所有銷毀,使它成為棧頂。
singleInstance 單一實例模式:SingleInstance比較特殊,是全域單例模式,是一種加強的SingleTask模式。它除了具有它所有特性外,還加強了一點:具有此模式的Activity僅僅能單獨位於一個任務棧中。
d) Scheme跳轉協議
Android中的Scheme是一種頁面內跳轉協議,通過自訂Scheme協議,可以跳轉到app中的任何頁面。
伺服器可以定製化跳轉app頁面
app可以通過Scheme跳轉到另一個app頁面
可以通過h5頁面跳轉app原生頁面
協議格式
Uri.parse("qh://test:8080/goods?goodsId=8897&name=fuck")
qh代表Scheme協議名稱
test代表Scheme作用的地址域
8080代表改路徑的連接埠號碼
/goods代表的是指定頁面(路徑)
goodsId和name代表傳遞的兩個參數
Scheme使用
http://blog.csdn.net/lishuiyuntian/article/details/77477756
2、Fragment問題講解
a) Fragment為什麼會被稱為第五大組件
b) Fragment載入到Activity中的兩種方式
1.靜態載入
xml方式
2.動態載入
FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.add(R.id.collapseActionView,new Fragment()); fragmentTransaction.commit();
c) FragmentPageAdapter與FragmentStatePageAdapter區別
FragmentPageAdapter適用於介面較少的情況
FragmentStatePageAdapter適用於介面較多的情況
看源碼中的destroyItem函數發現FragmentStatePageAdapter在Viewpage切換介面的時候會真正的回收記憶體,而FragmentPageAdapter不會
d) Fragment的生命週期
e) Fragement之間的通訊
1.Fragemnt調用Activity中的方法
2.Activity調用Fragment中的方法
3.Fragment調用Fragment中的方法
3、Service問題講解
4、broadcast問題講解
5、webview安全性漏洞問題講解
6、binder問題講解
第3章 Android基礎相關面試題