•(瞭解)2g/3g/4g技術
網絡、互聯網:連接了整個世界
WWW 萬維網 Web
網絡分類:有線 無線
有線:光纖 網線 WIFI(家裏使用的無線路由器)
無線:移動基站 移動網絡 WIFI(手機熱點分享) 移動互聯
移動互聯:推動世界的發展 又是技術的創新、創業的大好時機。
移動互聯的發展的霸主:摩托羅拉(被google收購)-->諾基亞-->蘋果-->蘋果+android-->蘋果+android+微軟(未知)
無線網絡的發展
1g: 模擬蜂窩網絡
第一代移動通信技術使用了多重蜂窩基站,允許用戶在通話期間自由移動並在相鄰基站之間無縫傳輸通話。
GSM
2g:數字網絡
第二代移動通信技術區別於前代,使用了數字傳輸取代模擬,並提高了電話尋找網絡的效率。這一時期手機用戶數量急速增長,
預付費電話流行。基站的大量設立縮短了基站的間距,並使單個基站需要承擔的覆蓋面積縮小,有助於提供更高質量的信號覆蓋。
因此接收機不用像以前那樣設計成大功率的,體積小巧的手機成爲主流。這一時期短信功能首先在GSM平臺應用,後來擴展到
所有手機制式。鈴聲等付費內容成爲新的利潤增長點。
GSM(全球移動通信系統)
全世界最流行的移動通信標準制式。由於內部兼容,國際漫遊變得更容易。全球2G網絡中80%爲GSM制式,覆蓋212個國家
/地區的30億人口。
CDMA是在數字技術的分支--擴頻通信技術上發展起來的一種嶄新而成熟的無線通信技術
3g:高速IP數據網絡
第三代移動通信技術的最大特點是在數據傳輸中使用分組交換(Packet Switching)取代了電路交換(Circult Switching)。幾年
前,用於在計算機上訪問移動互聯網的USB加密狗問世。電路交換使手機與手機之間進行語音等數據傳輸;
分組交換則將語音等轉換爲數字格式,通過互聯網進行包括語音、視頻和其它多媒體內容在內的數據包傳輸。
WCDMA (聯通)
CDMA2000(電信)
TD-CDMA(中國移動) 最差
4g:全IP數據網絡
到4G時代,java.lang.AbstractMethodError電路交換將完全消失。所有語音通話將通過數字轉換,以VoIP形式進行。因此在4G
網絡進行通話,將可以依靠有線或無線網絡而不一定需要移動信號覆蓋。
TD-LTE(中國移動) 最先引入
FDD-LTE(聯通、電信)
5g:第五代移動電話行動通信標準
xg:(未來)
特點:1 速度越來越快 2 功能越來越多
•(瞭解)Android起源
Android:機器人
Android是Google公司2007年發佈基於Linux2.6免費開源的操作系統。(記住)
英文描述:
Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK
provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
魯賓說,“我們開發Android的最初目的是開發一款相機平臺,但它後來成爲了手機平臺。”他表示,他們最初的計劃是開發一支
持雲存儲技術的相機平臺。谷歌(微博)2005年8月份收購了Android,魯賓也因此加盟谷歌。
(1)開放手機聯盟成立
2007年11月5日,34個聯盟成員宣佈成立開發手機聯盟。(保證android是一個可持續的產品)
(2)發佈第一版Android SDK
2007年11月12日宣佈發佈第一版Android SDK。
(3)Android開發者競賽
2008年4月17日舉辦Android開發競賽,在規定的時間內提交了1788件作品,推動了Android開發應用的速度。
(4)Android Market上線
2008年8月28日,爲Android平臺手機提供軟件分發和下載的Market正式上線,迅速積累了大量的應用。
(5)T-Mobile G1上市
2008年9月23日,第一款基於Android的手機上市。
(6)Android 1.0 SDK release 1發佈
2008年9月23日,Android 1.0 R1 SDK發佈,標誌着Android系統趨於穩定和成熟,越來越多的開發者加入Android開發陣營中。
(7)Android被宣佈開發源代碼
2008年10月21日,Android被宣佈開放源代碼。
•(瞭解)發展歷史
上圖就是android 系統升級的過程
當然顯示android現在目前已經升級了5.1
android的每個版本的命名都是吃的,android的升級的速度也是非常的快半年就升級一次,差不多是蘋果的2倍,每次升級都在原來的基礎之前進行了一些變化。當然對我們程序來說就是增加了一些新的API.
Android2.x的時候都是針對手機設備
Android3.0是專門針對平板電腦
Android4.0實現了三合一(手機、電視、平板)
當然大家不要簡單的認爲android就只能用於 (手機、電視、平板) android可以用於所有的設備
比如:汽車、無人飛機、電飯煲、空調、手錶、眼鏡、mp3....智能家居
android慢慢的也在吞噬嵌入式的市場。
android是一個平臺、一個生態圈。
•(掌握)體系結構
層疊式系統。
1寫出android的四層架構圖
applicaitons :應用程序層
application framework :應用框架層(api層)
libraries:(庫 c庫) 都是c的開源框架。
android runtime : dalvik vm (達爾維克虛擬機) 每一個應用程序都是運行在該虛擬機裏面。
linux kernel(內核) 驅動 他是android工程師添加的。進程間通訊。ipc c代碼
2 寫出android裏面的核心應用
Home(桌面) Contacts (聯繫人) phone(電話) browser (瀏覽器)
•(瞭解)dalvik虛擬機和jvm的區別
1 爲什麼不是jvm 而要搞一個dalvik vm ?
jvm 在設計上是考慮pc 不是移動設備
dalvik特點:1 速度快 2 功耗低 (在移動設備上)
2 區別:
1 識別的文件不同 jvm:.class 文件 .jar (壓縮文件很多.class) dalvik vm:.dex文件 只是一個文件
一次加載所有的內容
2 架構不同
jvm:基於堆棧(內存條) dalvik vm:基於寄存器(cpu)
dvm:16M 20M(可能被手機定製商修改)
•(瞭解)art模式
art(android runtime) :android 4.4纔開始有的。
在應用程序安裝的時候,就把.dex文件編譯成爲系統所能識別的文件。
android系統設計不是很好。基於虛擬機,這樣會導致系統的內存被虛擬機大量的消耗。(每個應用都有單獨的虛擬機)
ios android 是一家。
unix --> linux
在android5.0的時候已經全面使用art
•(掌握)android開發環境的搭建
環境的搭建:
過去:jdk 1.5、 eclipse、 adt插件 、 sdk開發工具集
現在:jdk google公司 提供了開發工具包 adt
看自己安裝的jdk是32位還是64位的:直接解壓
溫馨提醒:可以進入eclipse目錄 右鍵eclipse.exe發送一個快捷方式到桌面方便於操作
注意:所有的軟件已經安裝 不要放置在中文目錄 或者有空格的目錄
•(掌握)SDK目錄結構
sdk (software develop kits) 軟件開發工具集
add-ons:google map
docs:文檔
extras:額外:升級後的一些支持包 希望在低版本中也可以使用。
platforms:開發平臺
platfrom-tools:平臺工具
aapt:把應用程序打包成apk的工具
adb 工具:android debug bridge 安卓調試橋 連接 手機、模擬器
sample:例子
sources:源碼(只是部分的源碼) 關聯源碼
system-images:鏡像文件 安裝系統
tools:工具
•(掌握)模擬器的創建 和啓動
android設計者爲了減低開發人員的成本,還設計了模擬器用來模擬真實的手機。
第一步 點擊紅色區域
第二步 選擇New
第三步 創建模擬器
第四步 啓動模擬器
也許是看到模擬器不是這樣:主要你選擇的模擬器可能不是2.3的系統。
android模擬器是比較消耗內存,建議大家最好是4G的內存。
android模擬器的啓動的時長也是比較長的(第一次啓動時長是最長的,如果電腦不是太好的,耐心等待)
溫馨提醒:如果電腦不是很好的 最好是選擇版本比較低的系統這樣消耗的內存會少點 學習沒有影響
如果要想快一點也是可以的,可以安裝加速器
注意:電腦是i5(標準版) 可能會導致藍屏死機
•(瞭解)模擬器無法啓動
如果你的電腦使用的是中文用戶名可能導致模擬器無法啓動
添加ANDROID_SDK_HOME 環境變量,從變量名上看最好把ANDROID_SDK_HOME指向Android SDK目錄,然後啓動AVD
一定要重啓eclipse 作用:就是改變模擬器存放的位置
•(掌握)ddms使用
ddms(Dalvik Debug Monitor Server):是android開發的一個很重要的透視圖
開發eclipse 在最右邊就可以看到
設備列表
日誌
模擬器控制檯
文件列表
個人習慣:把這個常用的窗口直接顯示在java透視圖
在eclipse的操作欄選擇window-->show views
•(瞭解)adb環境變量配置
右鍵計算機-->屬性-->高級系統設置-->環境變量-->選擇path
把adb.exe命令所在的路徑配置好
這樣就可以在cmd窗口使用adb命令
•(瞭解)adb指令
l adb devices 列出所有的設備
l adb shell 掛載到linux的空間
l adb install xxx.apk 如果有多個設備,我們可以指定設備 adb install –s emulator-5554 D:/xxx.apk
l emulator –avd advname 啓動模擬器 例如:emulator –avd 2.2 (2.2 爲我們創建設備的名稱)
l adb pull <remote> <local> 把文件從手機導出到電腦
l adb push <local> <remote> 把文件從電腦導入到手機
這些命令都是可以提升出來的 只要在cmd窗口輸入adb 回車
linux的指令:
ls 列表文件
pwd 獲取當前所在的目錄地址
cd 進入那個目錄
•(掌握)adb異常
有的時候我們會發現你啓動模擬器,但是你卻在devices列表裏面看不到模擬器,或者你運行應用會再啓動一個模擬器。
原因:
1你的電腦裏面安裝了一些手機輔助軟件或者能夠自動連接手機的軟件
如:豌豆莢 360手機助手 暴風影音
這些軟件會殺死eclipse裏面的adb.exe
如果出現的這樣的問題:最好卸載這些軟件 或者 來到進程列表找到對應的進程殺死
2 adb 主動超時 在4.x 最常見
只能把模擬器關閉 再重啓
3 adb掉線
•(掌握)Android開發Eclipse工程的目錄結構
1新建工程
第一步 新建android工程
第二步 輸入工程的信息
android系統裏面不可能出現兩個包名相同的應用。
2工程目錄結構
把res目錄下所有的資源映射到R.java文件 方便於編程
3運行效果
應用程序的圖片 和 名稱
4清單文件
android是基於組件的開發 :基於4大組件 activity service broadcastReceiver provider
j2ee也是基於組件的開發:基於3大組件 servlet filter listener
快捷鍵:alt +/ 自動提示
ctrl + O 類列表
crlt + T 查看類的繼承關係
一個界面就是一個Activity.
5Activity
6佈局文件
res/layout下面的就是佈局文件
圖像顯示 xml顯示
•(瞭解)apk生成和安裝的流程
打包:
window的安裝 .exe
釋放的空間
/data/app apk存放的目錄
/data/data/包名 安裝的目錄
•(掌握)常見佈局(線性,相對,表格,絕對,幀佈局)
1線性佈局
vertical:垂直方向
horizontal:水平方向
2相對佈局
3幀佈局
4表格佈局
5絕對佈局
開發中不要使用。
•(掌握)電話撥號器
撥號的組件需要權限。 該組件對外暴露的時候他要求這樣的權限
•(掌握)點擊事件的四寫法
1 java代碼
2 xml配置
•(掌握)短信發送器
1界面效果
2核心Api
3 方法參數分析
4編碼實現
•(瞭解)真實手機的部署程序的方法
1 準備真實的手機
2 給手機安裝驅動
3 打開開發者模式 允許USB調試
4 run as
•(瞭解)常見單位 dip px
如果是長度的單位:dp dip
文字的大小 sp