1、四大組件算法
Activity (生命週期可編輯onResume和可見onStart,不可編輯onPause和不可見onStop)、Service (AIDL,開始方式)、BroadcastReceived(有序,無序) 、ContentProvider(Uri)數據庫
2、五大布局服務器
LinearLayout 、RelativeLayout(下降佈局嵌套) 、FreamLayout 、TableLayout 、AbsoluteLayout網絡
3、通訊機制多線程
Intent(隱式,顯示,兩個之間的數據傳遞)、Service、BroadcastReceived、Handler(多線程)、sharedPreferred(若是跳轉的次數太多,能夠考慮本地文件存儲了)、file(相似於sharedPreferred)app
4、動畫框架
幀動畫、Tween動畫(移動、縮放、旋轉、透明)異步
5、ListViewsocket
各類佈局加載(動態加載佈局)、優化(convertView、ViewHolder、異步加載、分頁加載)、notifyDataSetChanged更新數據ide
6、Fragment
與Activity(使用FragmentManager)之間的通訊、Fragment使用(getActivity())
7、線程、進程
1.進程:一個應用程序在內存中的鏡像
2.線程:一個進程中能夠包含多個線程
多線程、多線程下載
Thread Runnable Handler AsyncTask
應用場景:耗時操做(通常指5秒)和定時操做(schedule Task)
具體場景:IO操做(網絡操做、文件操做、數據庫操做)、複雜的運算算法、消息接收方法的耗時操做、定時任務
8、http和socket
Http(短鏈接)特色是客戶端發送的每次請求都須要服務器回送響應,在請求結束後,會主動釋放鏈接
Socket(長鏈接) 特色 服務器監聽,客戶端請求,鏈接確認
區別、優缺點、返回碼的含義
返回碼200成功206部分紅功404文件丟失503服務器未響應
9、數據存儲
文件存儲、SharedPreference(密碼、判斷)、SQLite(繼承SQLiteOpenHelper,生成SQLiteDatabase
對象來新建處理SQL語句,數據庫升級)、網絡存儲(上傳、下載)
10、自定義組件
兩種方式:include(標籤通常用merge);建立自定義控件(通常有響應按鈕時調用)
兩個主要方法measure和layout,要是自定義View,顯示時用setContentView
11、適配器
Drawable(.9圖片)、 Layout 、Values(dimen) 、Java代碼控制 、weight
12、開源框架、開源組件
框架:Volley 、xUtil 、okhttp、eventBus、Gson、festJson、imageloader、Picasso(獲取遠程圖片)、zxing(二維碼)
組件:pull2RefreshListView、SlidingMenu
十3、內存優化和程序優化
1.Android優化的佈局(使用merge標籤優化層級、不須要當即加載的佈局,設置爲GONE,系統會跳過,不加載、使用ViewStub 實現按需加載、ListView的優化)、