Android 知識記錄

七大布局分別爲
線性佈局(LinearLayout)、
相對佈局(RelativeLayout)、
幀佈局(FrameLayout)、
表格佈局(TableLayout)、基本不使用
絕對佈局(absoluteLayout)、兼容問題大
網格佈局(GridLayout)、很少使用
約束佈局(ConstraintLayout)Android Studio 2.2加入

四大組件
Activity(活動)、
Service(後臺服務)、
BroadCast Recevicer(廣播)、
Content provider(內容提供者)

四大組件外的重要能力者:Fragment

五種數據存儲方式
SharePreferences、存放配置信息,不適用的大型數據存入,且不能存重複字段
SQLite、適用的大型數據存入,不適合存圖片與文件
Contert Provider、適用app間的數據共享
File、適用任何文件存儲
網絡存儲。視後端開放限制決定能存什麼

動畫
視圖動畫(View Animation
幀動畫 (Drawable Animation
屬性動畫( Property Animation
觸摸反饋動畫(Ripple Effect / Touch Feedback)5.0版本加入
揭露動畫(Reveal Effect )5.0版本加入
轉場動畫 & 共享元素(Transition Animation
視圖狀態動畫(Animate View State Changes )就是在點擊按鈕時的動畫效果
矢量圖動畫(AnimatedVectorDrawable)Android Studio 1.4加入導入svg功能
約束佈局關鍵幀動畫(Constraint Animation / ConstraintSet

性能
UI優化:佈局層次結構抽象佈局使用Lint工具

內存優化:
OOM(內存泄漏、內存抖動、內存溢出)、OOM查找避免OOMOOM分析案例AS 內存分析工具介紹使用
ANR(耗時)、ANR分析ANR產生原因
leakcanary、facebook開源的檢測內存泄漏框架

圖片
bitmap、(壓縮優化壓縮框架加載大圖)

自定義控件
什麼是自定view?
自定義UI刷新的三種方式
自定義view的三種方式
組合控件,繪製控件(CanvasPath),繼承控件

事件分發機制
Activity -> ViewGroup -> View

多線程
AsyncTask
IntentService
HandlerThread
ThreadPoolExecutor

進程間通信
AIDL
Messenger

網絡
http
https
socket (介紹例子 )、
networkSecurityConfig報錯(Android api28 出現網絡安全問題,強制使用https,不能使用http,使用http需要設置安全配置)、
WebView騰訊X5

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章