課程描述INTRODUCTION
android開發(fā)培訓(xùn)班
日程安排SCHEDULE
課程大綱Syllabus
android開發(fā)培訓(xùn)班
【課程背景】
為響應(yīng)工業(yè)和信息化部信息化高端人才培養(yǎng)的號(hào)召,曼頓培訓(xùn)中心特推出了IT項(xiàng)目管理課程培訓(xùn)班,希望通過專業(yè)的IT項(xiàng)目管理體系與業(yè)界真實(shí)案例來全面提高IT項(xiàng)目管理人員的管理水平,旨在培養(yǎng)專業(yè)IT項(xiàng)目管理專家,更好地服務(wù)于IT項(xiàng)目管理。
【課程目標(biāo)】
1.通曉安卓的架構(gòu)哲學(xué)和力量來源以及實(shí)現(xiàn)技術(shù);
2.能夠開發(fā)出任意類型、任意復(fù)雜程度的應(yīng)用程序;
3.能夠使用NDK技術(shù)編程;
4.實(shí)戰(zhàn)安卓測(cè)試技術(shù);
5.對(duì)HTML5有根本性的理解;
6.以ActivityManagerService的源碼剖析為核心,徹底剖析安卓程序運(yùn)行背后的機(jī)制,深刻體悟安卓框架的設(shè)計(jì)哲學(xué)和實(shí)現(xiàn)機(jī)制。
【課程要點(diǎn)】
1.揭秘Android;
2.精通四大組件;
3.精通安卓高級(jí)界面編程;
4.精通安卓網(wǎng)絡(luò)編程;
5.熟練NDK編程;
6.實(shí)戰(zhàn)Android;測(cè)試技術(shù);
7.洞悉HTML5;
【課程大綱】
1.1Android的哲學(xué)思考
1. 造型簡(jiǎn)單、內(nèi)涵豐富、無限重復(fù)
2. Android的勝利者
3. Android核心力量源泉
4. Android的IOC容器、解耦
5.Android和iOS的核心區(qū)別
1.2Android框架分析
1. Android框架
2. Android設(shè)計(jì)模式
3. 深入Android的IOC
4.框架的重大意義
5.Android的硬件框架HAL
6.Android各主要版本區(qū)別(2.3,3.0, 4.0)
7..Android和iOS的共同點(diǎn)
1.3Dalvik VM 1. Dalvik VM的特點(diǎn),Dalvik VM和JVM的比較
2 .Dalvik VM的內(nèi)存分布及OOM(Out of Memory)的根本原因和解決方案是什么?
3 .Preload Classes和 Preload Resources,ClassLoader到底在哪里?
4 .Dalvik與Java和C/C++
1.4Android開發(fā)環(huán)境搭建和HelloWorld
1. Java、Eclipse、SDK、NDK、ADT
2. 搭建環(huán)境過程中的疑難問題
3.徹底解決沒有3G信號(hào)的問題
4.開發(fā)HelloWorld
5.徹底剖析第一個(gè)程序
6.Android應(yīng)用程序開發(fā)的經(jīng)典模式---MVC模式徹底剖析
7.總結(jié):掌握一個(gè)完整的應(yīng)用程序的開發(fā)步驟、注意事項(xiàng)、方法等
1.5Android發(fā)短信、發(fā)彩信、打電話
1.發(fā)短信案例
2.發(fā)彩信案例
3,打電話案例
4,總結(jié)和思考之一:Android應(yīng)用程序的設(shè)計(jì)理念
5,總結(jié)和思考之二:Android應(yīng)用程序的生命周期
1.6Activity生命周期剖析、應(yīng)用程序生命周期剖析
1.Activity生命周期周期圖分析
2.Activity生命周期測(cè)試代碼
3.Activity嵌套生命周期
4.應(yīng)用程序生命周期剖析
5.對(duì)Android管理應(yīng)用程序和Activity方式思考
1.7不同Activity之間的調(diào)用和數(shù)據(jù)傳輸,關(guān)于隱式Intent精彩絕倫剖析,關(guān)于setType的問題已經(jīng)解決方案顯示Intent和隱式Intent使用場(chǎng)景分析
3.setType()帶來的困擾以及*解決方案
4.顯示Intent和隱式Intent使用場(chǎng)景、使用意義、利弊。
5.對(duì)Android中鼓勵(lì)解耦的實(shí)現(xiàn)方式的思考
1.8 Handler、Looper、Message、MessageQueue
1. Android的事件驅(qū)動(dòng)模型
2. Looper、MessageQueue、Hanlder、Message等源碼深度剖析
3. Looper、MessageQueue、Hanlder、Message及多線程實(shí)戰(zhàn)案例
1.9 AsyncTASK異步線程技術(shù)
1. 使用AsyncTask的原因及對(duì)AsyncTask的思考
2. AsyncTask代碼示例
3. AsyncTask源碼剖析
4. 異步線程調(diào)用的應(yīng)用場(chǎng)景及注意事項(xiàng)
2.0Android調(diào)試
1.調(diào)試的重要價(jià)值
2. 調(diào)試實(shí)戰(zhàn)
2.1 Android基本UI設(shè)計(jì)與開發(fā)技巧
1. UI設(shè)計(jì)理念與開發(fā)技巧
2. 菜單實(shí)戰(zhàn);
3.Google Map、WebView、Gallery、Spinner、Tab Layout、Grid View、Table layout、Relative layout、Linear layout實(shí)戰(zhàn);
2.2 ListView異步加載技術(shù)
1. 使用ListView異步加載技術(shù)的必要性
2. ListView異步加載技術(shù)編程實(shí)戰(zhàn)
2.3 ListView分頁加載技術(shù)
1. 使用ListView分頁加載技術(shù)的必要性
2. ListView分頁加載技術(shù)編程實(shí)戰(zhàn)
2.4 Widget編程實(shí)戰(zhàn)
1. Widget應(yīng)用場(chǎng)景
2. Widget編程實(shí)戰(zhàn)
2.5自定義TabHost
1. Tabhost的應(yīng)用場(chǎng)景
2. 自定義TabHost編程實(shí)戰(zhàn)
3. TabHost源碼剖析
2.6自定義標(biāo)題欄
1. 自定義標(biāo)題欄的應(yīng)用場(chǎng)景
2. 自定義標(biāo)題欄編程實(shí)戰(zhàn)
3.自定義標(biāo)題欄疑難問題解析
2.7 PopupWindow
1. PopupWindow程序帶來的視覺沖擊
2. PopupWindow編程實(shí)戰(zhàn)
3. PopupWindow調(diào)試
2.8 WebView
1. WebView主要的API
2. WebView的行為
3. WebView控制Web頁面的各個(gè)方面及實(shí)例
4. WebView高級(jí)應(yīng)用
5.WebView的高級(jí)控制
6. WebView和服務(wù)器
7.WebView和CGI請(qǐng)求相結(jié)合
2.9 性能測(cè)試和優(yōu)化
1. 如何進(jìn)行性能測(cè)試
2. 性能測(cè)試實(shí)戰(zhàn)
3. 優(yōu)化法則和編碼應(yīng)該注意的地方
1.1圖片拖拉功能
1 圖片拖拉功能應(yīng)用場(chǎng)景
2 圖片拖拉功能編程實(shí)戰(zhàn)
1.2多點(diǎn)觸摸與縮放功能
1 多點(diǎn)觸摸與縮放功能應(yīng)用場(chǎng)景
2 多點(diǎn)觸摸與縮放功能編程實(shí)戰(zhàn)
1.3 ANDROID中圖形編程實(shí)戰(zhàn)
1 使用layer LIST制作動(dòng)態(tài)相框
2 使用STATELIST實(shí)現(xiàn)不同狀態(tài)下圖片的切換
3 使用LEVEL LIST揭秘電池電量變換狀態(tài)
4 使用TRANSITION DRAWABLE實(shí)現(xiàn)動(dòng)態(tài)過渡效果
5 使用CLIP DRAWABLE揭秘水平進(jìn)度條
6 使用SHAPE DRAWABLE自定義幾何圖形
1.4廣播接受者BroadcastReceiver,短信監(jiān)聽器案例(接受到短信后上傳到服務(wù)器或發(fā)送到指定的號(hào)碼或者發(fā)送到指定的郵件中)
1.剖析廣播接收者,與JMS的比較,廣播接受者的IoC原理
2.短信監(jiān)聽Android客戶端
3.服務(wù)器端搭建
4.通過網(wǎng)絡(luò)把接收到的短信上傳到服務(wù)器
5.把接收到的短信發(fā)送到指定的手機(jī)號(hào)碼或者郵件中
6.BroadcastReceiver的的生命周期和注意事項(xiàng)以及5秒鐘生命響應(yīng)時(shí)間的解決方案
1.5服務(wù)Service,電話監(jiān)聽器(每次開機(jī)的時(shí)候自動(dòng)開機(jī),電話來時(shí)錄音并上傳到服務(wù)器)
1.詳細(xì)剖析Service
2.構(gòu)建電話監(jiān)聽的Service
3.使用BroadcastReceiver監(jiān)聽開機(jī)事件,并在開機(jī)時(shí)啟動(dòng)電話監(jiān)聽的Service
4.上傳音頻文件到服務(wù)器
5.關(guān)于Android安全體系的思考
1.6 SharedPreferences的讀寫、SharedPreferences操作權(quán)限、從不同的包中讀取參數(shù)及源代碼剖析
1.SharedPreferences的讀
2.SharedPreferences的寫
3.對(duì)SharedPreference操作權(quán)限分析
4.讀寫不同包中的SharedPreference
5.源代碼剖析
1.7單元測(cè)試、日志、手機(jī)內(nèi)部文件的形式存儲(chǔ)數(shù)據(jù)及源代碼剖析
1.單元測(cè)試
2.日志
3.對(duì)手機(jī)的文件進(jìn)行讀寫:openFileInput()、openFileOutput()
4.對(duì)文件讀寫的單元測(cè)試
5.對(duì)四種文件權(quán)限模式的測(cè)試
6.常用的文件讀寫API簡(jiǎn)介
7.剖析源代碼
1.8 SDCard讀寫、代碼重構(gòu)、源代碼剖析
1.構(gòu)建業(yè)務(wù)層
2.對(duì)業(yè)務(wù)層的單元測(cè)試
3.使用Activity調(diào)用業(yè)務(wù)層對(duì)SDCard進(jìn)行讀寫
4.提取出幫助類,遵循MVC模式對(duì)代碼重構(gòu)。
5.源代碼剖析
1.9 SQLite管理工具類、CRUD操作、分頁等及源代碼剖析
1.SQLite簡(jiǎn)介
2.SQLiteOpenHelper類
3.CURD:execSQL()和rawQuery()
4.分頁
5.對(duì)getWritableDatabase()和getReadableDatabase()進(jìn)行源代碼分析
6.執(zhí)行流程和原理的深入徹底的剖析
7.源代碼剖析
2.0使用Android自身提供的API進(jìn)行CRUD操作、ListView的詳細(xì)講解及源代碼剖析
1.使用Android自帶的insert、update、query、delete等進(jìn)行CRUD操作
2.剖析insert、update、query、delete的源代碼
3.對(duì)ListView深入詳細(xì)的剖析,自定義視圖,自定義Adapter。
4.剖析Cursor的源代碼
5.關(guān)于SQLite和Cursor的“_id”問題的剖析和解決方案
7.源代碼剖析
2.1 ContentProvider背景、用途,如何構(gòu)建ContentProvider,UriMatcher,ContentUris,對(duì)CotentProvider進(jìn)行單元測(cè)試、源代碼分析
1.ContentProvider背景、用途
2.構(gòu)建ContentProvider的詳細(xì)步驟
3.對(duì)URI的徹底剖析
4.分析UriMatcher,ContentUris
5.對(duì)ContentProvider的層代碼單元測(cè)試
6.ContentProvider的源代碼剖析
2.2基于通訊錄的開發(fā)
1. 通訊錄的數(shù)據(jù)庫(kù)和數(shù)據(jù)表分析
2. 通訊錄ContentProvider的源碼剖析
3. 獲取所有的聯(lián)系人信息
4.添加聯(lián)系人
5.如何處理添加通訊錄記錄時(shí)的事物問題
1.1深入Android測(cè)試,涵蓋Activity、Service、ContentProvider的測(cè)試等
1.Assertion
定制消息靜態(tài)導(dǎo)入
2. 深入Assertion
3. TouchUtils類
4. Mock對(duì)象
MockContext概述
IsolatedContext類
對(duì)文件和數(shù)據(jù)庫(kù)的測(cè)試操作
MockContentResolver類
5.基類TestCase
沒有參數(shù)的構(gòu)造方法
傳遞參數(shù)的構(gòu)造方法
setName()方法
6.基類AndroidTestCase
assertActivityRequiresPermission()
方法剖析和實(shí)戰(zhàn)
assertReadingContentUriRequiresPermission()
方法剖析和實(shí)戰(zhàn)
assertWritingContentUriRequiresPermission()方法剖析和實(shí)戰(zhàn)
7. Instrumentation
ActivityMonitor內(nèi)部類剖析和實(shí)戰(zhàn)
8. InstrumentationTestCase類
launchActivity和launchActivityWithIntent
方法
sendKeys和sendRepeatedKeys方法
runTestOnUiThread幫助方法
9. ActivityTestCase類
scrubClass方法
10. ActivityInstrumentationTestCase2類
構(gòu)造方法
方法tearDown方法
testPreconditions方法 11. ProviderTestCase2類構(gòu)造方法實(shí)戰(zhàn)
12. ServiceTestCase 構(gòu)造方法
13.TestSuiteBuilder.FailedToCreate Tests類剖析
14. 在測(cè)試工程中使用external ibraries
1.2斷點(diǎn)續(xù)傳(一)類似迅雷的多線程下載器(適用于任何類型的文件下載)
1,多線程下載斷點(diǎn)續(xù)傳原理和流程圖
2,下載文件時(shí)Http協(xié)議協(xié)議詳解
3,多線程下載斷點(diǎn)續(xù)傳程序:設(shè)計(jì)服務(wù)端和Android端
4,Android端的內(nèi)容涉及IoC、多線程、SQLite數(shù)據(jù)庫(kù)、Handler、Http協(xié)議、緩存處理、意外關(guān)機(jī)時(shí)候的處理、編寫框架、MVC、Service、Android中的I/O流、代碼調(diào)試、Activity的生命周期等
5,單元測(cè)試
6,軟件調(diào)試
1.3繪圖的技巧和優(yōu)化
1 2D圖形
顏色效果在Android中的含義
區(qū)域操作的方法,對(duì)性能影響,程序結(jié)構(gòu)優(yōu)化
位圖畫布和回放畫布的區(qū)別
2D圖形繪制性能影響
2 3D的圖形
3D透明的實(shí)現(xiàn)方式
3D在不同系統(tǒng)的差別
3 Drawable和基本圖形系統(tǒng)
Drawable的技巧(*代碼和xml的示例)
1.4 Android客戶端表單數(shù)據(jù)的上傳
1,上傳基本的數(shù)據(jù)類型
2,上傳圖片等附件
3,把代碼重構(gòu)為能夠上傳任意數(shù)量的字段和任意數(shù)量的附件的工具類
4,思考本地離線存儲(chǔ)/在線上傳技術(shù)方案
1.5: Android ndk中C通過JNI調(diào)用Java
1 本地C代碼調(diào)用Java中的Method
2本地C代碼獲得Java對(duì)象的屬性值
3 多個(gè)類中有本地C代碼的調(diào)用
4 在本地代碼中創(chuàng)建Java對(duì)象
5 處理異常
1.6:ANDROID NDK中Java與C++溝通
1 Java代碼調(diào)用C++代碼
2 C++代碼調(diào)用Java代碼
1.7:NDK中的多線程編程
1 深度剖析Java、Dalvik VM、C/C++的運(yùn)行流程
2 Java中分配線程調(diào)用C/C++函數(shù)
3 C/C++本地代碼通過分配線程調(diào)用Java函數(shù)
1.8:Android手機(jī)功能開發(fā)(20分鐘)
1 應(yīng)用程序控制硬件的起點(diǎn):getSystemService函數(shù)剖析;
2手機(jī)硬件功能開發(fā)、Android底層方法的調(diào)用等
1.9瀏覽器開發(fā)和自定義
1 瀏覽器定制和開發(fā)的核心原理剖析
2 瀏覽器定制和開發(fā)的技術(shù)手段剖析
3 瀏覽器定制和開發(fā)實(shí)戰(zhàn)
2.0 HTML5時(shí)代:Device、Browser、Cloud
1 HTML5時(shí)代誰最重要?
2 HTML5與Device
3 HTML5與Cloud
4 什么主導(dǎo)了HTML5時(shí)代?
2.1 Android應(yīng)用程序運(yùn)行背后秘密---WindowManagerService源碼剖析1 Android應(yīng)用程序的main入口到底在哪里?
2 ActivityThread成為應(yīng)用程序的主線程的過程是什么?
3 Looper、MessageQueue、Handler背后的秘密;
4 Android的Activity、Service、Provider、Receiver啟動(dòng)的流程源碼剖析
android開發(fā)培訓(xùn)班
轉(zhuǎn)載:http://www.jkyingpanluxiangji.com/gkk_detail/9704.html
已開課時(shí)間Have start time
培訓(xùn)開發(fā)內(nèi)訓(xùn)
- 卓越內(nèi)訓(xùn)師訓(xùn)練營(yíng) 李芳
- 《TTT精彩呈現(xiàn)-讓你的課 李想
- PTT講師授課技能 李芳
- 內(nèi)訓(xùn)師TTT之課堂精彩呈現(xiàn) 李芳
- 內(nèi)訓(xùn)師經(jīng)驗(yàn)萃取與網(wǎng)絡(luò)課程開 李芳
- 《引導(dǎo)技術(shù)在培訓(xùn)中的應(yīng)用》 李悅?cè)?/span>
- 《七步成“課”—內(nèi)訓(xùn)師課程 李悅?cè)?/span>
- 培訓(xùn)體系搭建課程 李巍華
- 向培訓(xùn)要效益: 卓越培訓(xùn)體 張懷
- 培訓(xùn)體系的構(gòu)建與管理 李巍華
- 培訓(xùn)師生動(dòng)授課與演講技巧 李芳
- 《TTT精彩呈現(xiàn)-精湛課程 李想