1. JAVA基礎
市面上絕大部分的安卓軟件都是使用Java進行開發的,一個Android開發開發工程師必須具備扎實的java基礎。而且Java不止在前期學習中占據重要地位,不少安卓大牛在開發了很多款APP之后,安卓開發中從不脫離Java和Java里常用的模式,要開始Android開發,你至少需要知道以下Java的知識。
△ 面向對象
△ 線程和同步
△ 常見I/O
△ 簡單的設計模式
2. Android四大組件
應用組件是一個Android應用程序的重要基石。每一個組件都作為一個獨立的實體存在,起著特定的作用。Adnroid中有四種不同類型的應用組件。每種類型提供不同的用途,并各自擁有不同的生命周期。
Android有四大組件:Activity、Service、Broadcast Receiver、Content Provider:
△ Activity (具備控件、菜單等界面元素,管理生命周期、跳轉邏輯)
△ Service(綁定、非綁定、混合綁定,提供同步和異步的接口)
△ Broadcast Receiver(普通、有序廣播,生命周期)
△ Content Provider(音頻、視頻、圖片、通訊錄等)
3. Android界面開發方法
安卓開發工程師需要有學習組件開發、搭建一個工程的思想,在這個階段會接觸到各種各樣的控件,工程師利用控件制作許多效果。開發一個交互水平高、適配性強的APP需要Android開發工程師對界面開發有深刻的了解。
△ 各種基本控件,ImageView / TextView重點掌握
△ 界面布局(幀布局、相對布局、線性布局、約束布局),靈活使用
△ Fragment
△ 控件,ListView/ViewPager及Adapter
△ Bitmap使用,各種Drawable使用
△ 使用基本的視圖和屬性動畫
4. Android開發優化
代碼體量變得日趨臃腫,視圖層級越來越深,工程結構也越來越復雜。相應的,輸出的apk包越來越大,界面流暢性大不如前,經常性發生卡頓,甚至不時出現內存溢出崩潰。在這個階段,Android開發需要掌握以下方面的技術。
△ AndroidStudio的使用(包括調試工具,測試工具,快捷鍵等)
△ Android資源管理
△ Android視圖架構(Activity視圖層級、layout inflate)
△ UI性能檢測
△ 內存優化、電量優化、代碼優化
△ 網絡調試
△ 流量優化
△ NDK JNI開發
5. Android線程模型
打開一個手機應用,展示給用戶的是應用的界面,手機的界面是數據的一種呈現方式,當用戶和界面產生交互時,又會產生新的數據。
一個應用,本質上是數據的生產,數據的消費和數據的流轉。數據的讀寫、數據的存儲、數據的交換需要掌握哪些技能?
△ SP存儲、Sqlite、ContentProvider使用
△ Java線程、線程池
△ Handler/AsyncTask/Loader
△ Service
△ OkHttp
這些都是成為Android開發工程師需要具備的技能,你get到了嗎?