您好,登錄后才能下訂單哦!
1.1G-4G的介紹
Generation(一代)
WAP(wait and pay)
Wireless Markup Language(WML)精簡版的html語言
1.Android操作系統(tǒng)介紹
2.Android歷史介紹
3.Android系統(tǒng)架構(gòu)(重點)
第一層:應(yīng)用層Application
第二層:應(yīng)用框架層ApplicationFramework(中間件)
第三層:Android底層類庫層Libraries、Dalvik虛擬機
第四層:linux內(nèi)核層 linux kernel(安全管理、內(nèi)存管理、進程管理、電源管理、硬件驅(qū)動)
Android試運行在Linux內(nèi)核基礎(chǔ)之上的。
4.手機設(shè)備的軟件棧,包括
一個完整的操作系統(tǒng)
中間件
關(guān)鍵的應(yīng)用程序
5.兩種虛擬機的不同 (重點)
1)、架構(gòu)不同:JVM使用棧架構(gòu);Dalvik使用的是寄存器,數(shù)據(jù)是加載到CUP的寄存器上的。
2)、JVM加載的.class文件,Dalvik加載的是.dex文件,對內(nèi)存的分配情況做了優(yōu)化。
1.可以在里面管理SDK版本的下載和卸載。(SDK下載到platform文件夾中)
2.ADT(AndroidDeveloper Tools)是eclipse的一個插件
3.
1)下載的包中有:
Eclipse+ADT plugin --- ADT的插件;
Android SDK Tools --- 安卓的SDK工具
Android Platform-Tools --- 安卓最新的平臺工具
The latest Android platform --- 安卓最新的平臺
The latest Android System p_w_picpath for Theemulator --- 最新的模擬器的視圖對象
2)解壓后,里面有三個文件和一個執(zhí)行程序。
Eclipse 文件夾是開發(fā)時用到的工具。
sdk 文件夾是開發(fā)時用到的工具集。
SDK Manager.exe SDK的管理器
4.
注意:SDK Manage中Tools選項有options選項,打開,將others選項卡中的第一個選項勾上,勾上后,資源會采用http的形式下載下來,下載不會被墻,不會中斷。
5.Android 版本與API等級對應(yīng)關(guān)系及SDKManager介紹
1)Android 版本與API等級對應(yīng)關(guān)系
Platform API Level
Android2.2 8
Android2.3.3 10
Android4.0 14
Android4.1.2 16
注:推薦在android2.2、2.3、4.1平臺上開發(fā),穩(wěn)定。
2)SDKManager介紹
【開發(fā)中需要開發(fā)哪個平臺的產(chǎn)品,就要將對應(yīng)的平臺文件下載下來。下載完之后,該文件夾會在SDK文件夾下的platform文件夾中?!?/span>
每個安卓版本下具體文件的介紹:
SDKPlatform -- 開發(fā)所需要的平臺(重要),開發(fā)時所使用的jar包
Samplesfor SDK -- SDK的示例代碼【示例代碼下載之后放在SDK文件夾中的samples 文件夾中,里面是根據(jù)Android版本號分文件夾的?!?/span>
ARM EABI v7a System Image -- 用于創(chuàng)建基于ARM處理器的模擬器的鏡像
Intelx86 Atom System Image -- 用于創(chuàng)建基于x86處理器的模擬器的鏡像
MIPSSystem Image -- 開源的處理器架構(gòu)(用的不多)鏡像
GoogleAPIs -- 開發(fā)中要用到地圖,就需要下載這個架包,下載之后可以操作Google 地圖了。
Sourcesfor Android SDK -- SDK的全部的源代碼,方便調(diào)試,觀察系統(tǒng)是怎么實現(xiàn) 【會放在SDK文件夾中的sources文件夾中的Android版本的文件夾中】
Extras -- 額外的工具
AndroidSupport Library -- 支持的庫(可以使低版本支持高版本),API的向下兼容, 開發(fā)項目時會用到
GoogleAdMob Ads SDK -- 用于在已完成的程序中加入廣告
GoogleAnalytics App Tracking SDK -- 用于分析程序的,發(fā)布到網(wǎng)上之后,可以通過 這個區(qū)跟蹤。
GoogleCloud Messaging for Android Library -- 用于消息推送
GooglePlay services -- 程序?qū)懲旰笙胍l(fā)到Google上,要用到的架包
GooglePlay APK Exception Library --
GooglePlay Billing Library --
GooglePlay Licensing Library --
GoogleUSB Driver -- 是手機的驅(qū)動。
GoogleWeb Driver -- 是web攝像頭用到的驅(qū)動
Intelx86 Bmulator Accelerator(HAXM)-- Intel公司提供的一個加速器的工具
【使用:找到“模擬器的 加速器”文件夾,打開里面的執(zhí)行文件即可,本機 的處理器要I3以上】
1.模擬器尺寸創(chuàng)建背景
VGA 480* 640
QVGA 240*320
HVGA 320*480
WQVGA 240*400
FWVGA 480*854
WVGA 480*800
注:模擬器越大,計算越復雜,消耗的資源越多。
2.AVD的創(chuàng)建(AVD: Android virtual Device 安卓虛擬設(shè)備)
1)兩個選項卡,一個是AVD,下面顯示,AVD創(chuàng)建設(shè)備產(chǎn)生文件的存放目錄
另一個是DeviceDefinitions(已定義好的設(shè)備)
2)創(chuàng)建模擬器界面的每項的意思:
AVD name:模擬器名稱;
Device:屏幕分辨率;
Target:平臺版本號;
CPU/ABI:CUP(處理器)的類型
KeyBoard:創(chuàng)建的時候是否顯示鍵盤;
Skin:在創(chuàng)建的時候,是否顯示鍵盤上面的皮膚
Front Camera:
Back Canera:控制模擬器的攝像頭,Webcam0-->自動加載電腦的攝像頭
Memory Options:RAM-->模擬器的內(nèi)存大小
Internal Storage:模擬器的硬盤有多大;
SD Card:外部設(shè)備的大小(不要貪多,是在硬盤上創(chuàng)建同樣大小的文件作為sd卡)
Emulation Options:Snapshot-->相當于windows-7的睡眠狀態(tài),即關(guān)機之后,下次開機的時候,這些操作還在,不建議勾選容易造成問題
UseHost GPU-->如果電腦是獨立顯卡,可以使畫面流暢,如果是集成顯卡的,容易造成畫面變花
注意:1.模擬器與電腦的鏈接其實用的是adb.exe調(diào)試橋(協(xié)議通信)
2.模擬器左上角的數(shù)字,其實是模擬器的端口號,也是模擬器的電話號(模擬器不支持中文)
3.小技巧:ctrl + F11 橫豎屏的切換
3.創(chuàng)建模擬器常見錯誤:
1)、invalidcommand-line parameter:
錯誤的非法的路徑,代表安裝的路徑有中文。添加“Android_SDK_HOME”環(huán)境變量,指向Android的SDK目錄。然后重啟AVD-->模擬器
2)、模擬器啟動后,無法保存數(shù)據(jù)
原因:電腦意外關(guān)機或者模擬器非法關(guān)閉。
正常情況下模擬器被開啟后,會在“Documents and Settings\Administrator\.android\avd\**.avd”的目錄下產(chǎn)生:cashe.img.lock 、hardware-qemu.ini.lock、sdcard.img.lock、userdata-qemu.img.lock這樣的文件夾,用來標記當前模擬器設(shè)備已經(jīng)開啟。當模擬 器關(guān)閉時,會自動刪除這些文件夾。
【注:如果電腦意外重啟或模擬器無法關(guān)閉,這幾個文件是不會被自動刪除的,系統(tǒng)Android模擬器還處于打開狀態(tài),新開啟的模擬器就無法保 存數(shù)據(jù)了。這個時候需要手動刪除這些文件夾】這些文件時用來標示這些徑向文件被那個模擬器使用了
文件夾cashe.img.lock中的pid文件這個文件打開之后,里面保存的是進程里面的某個pid值,即為進程id。當開啟兩個相同的模擬器時,會造成 某些安裝的軟件沒有保存。
3)、“尚未注冊網(wǎng)絡(luò)”錯誤信息的解決方案
a:電腦沒有連接互聯(lián)網(wǎng),同時也沒有局域網(wǎng);網(wǎng)上鄰居-->屬性-->本地連接-->屬性:設(shè)置TCP/IP:
IP地址:192.168.1.100
子網(wǎng)掩碼:255.255.255.0;
默認網(wǎng)關(guān):192.168.1.100
b:沒有連接互聯(lián)網(wǎng),但是有局域網(wǎng);
IP地址:設(shè)置成你所在的局域網(wǎng)的IP;
子網(wǎng)掩碼:設(shè)置成你所在局域網(wǎng)的掩碼;
默認網(wǎng)關(guān):設(shè)置成你所在局域網(wǎng)的網(wǎng)關(guān);
首選DNS服務(wù)器:設(shè)置成你所在的局域網(wǎng)的路由器IP
1.釋義:DDMS:DeviceDefinition Motion Service
2.DDMS位置
如果eclipse右上角默認沒有這個條目,那么在這個位置附近有個類似田字格似的小方塊,點擊,選other,會出現(xiàn)一個列表,內(nèi)有DDMS,選中,按OK,即可。
3.DDMS界面
1)上圖1處為Devices界面,顯示當前eclipse所連接的設(shè)備
2)上圖2處的界面中有幾個選項卡
Threads為了調(diào)試方便,檢測一個進程中的線程
Heap 是觀察應(yīng)用程序的堆棧信息的
FileExplorer 列出當前選中的Android設(shè)備的文件目錄結(jié)構(gòu)
EmulatorControl 對當前所選中的Android設(shè)備進行模擬操作,這其中也有幾個選項
TelephonyStatus:電話狀態(tài),示例:Speed代表手機網(wǎng)絡(luò)信號的速度變化。
Telephony Actions:電話動作 ,可以向模擬器打電話、發(fā)短信
示例:Call 是向模擬器打電話
Hangup 是讓模擬器主動掛斷電話
LocationControls
Longitude(經(jīng)度),latitude(緯度)
add-ans: 擴展的插件,附加的信息
docs: 幫助文檔,經(jīng)常用
extras: 附加的目錄,支持的jar包
platforms: 平臺目錄
platform-tools:開發(fā)時用到的工具。包含
adb.exe【Androiddebug bridge:安卓的調(diào)試橋,用于調(diào)試程序】、
aapt.exe【applicationpackage tools:安卓程序打包工具,完成的程序要打包成一 個.apk的文件】
dx.bat【將.class的字節(jié)碼文件轉(zhuǎn)換成.dex字節(jié)碼文件,因為Android里面執(zhí)行的 是.dex字節(jié)碼文件】
samples: 示例代碼
sources: 源代碼目錄
system-p_w_picpaths:鏡像目錄
temp: 緩存文件
tools:新建的模擬器一般都放在該文件夾下,里面還包含一些工具:mksdcard.exe-->創(chuàng) 建一個sd卡,就是模擬器運行需要一個sd卡,這個就是在硬盤擬sd卡?!痉诺?/span> 是與模擬器相關(guān)的一些工具】
1.adb: Android debug bridge:安卓的調(diào)試橋,用于調(diào)試程序
2.常見命令:
adbdevices 列出所有的設(shè)備
可以列出包括真機的android設(shè)備,如果真機沒有顯示出來,檢查兩個地方: 真機的驅(qū)動是否安裝和USB調(diào)試是否打開
adbshell掛載到linux的空間 遠程的訪問到了模擬器終端
#ls列出手機文件目錄
#ps列出手機運行的進程
#ping
adbkill-server殺死服務(wù)
adbstart-server 開啟服務(wù)
如果不想敲這條命令,可以先敲adb devices,系統(tǒng)會自動開啟服務(wù),再檢索
adb install xxx.apk 安裝應(yīng)用,敲完install可以把安裝包直接拖拽到命令行窗口。
如果有多個設(shè)備,我們可以指定設(shè)備
adbinstall –s emulator-5554 D:/xxx.apk
否則會報錯:error:morethan one device and emulator
adb uninstall com.itheima.helloworld(程序包名稱,而不是顯示給用戶的名稱)
adbpull <remote> <local>把手機內(nèi)文件復制到電腦 最先在命令行中進入到你想到復制到哪的目錄下再執(zhí)行這條語句先手機的文件(不用加路徑,直接文件名加擴展名)后復制過來的文件名(也不用加路徑,直接文件名加擴展名)
adbpush <local> <remote>把電腦中文件復制到手機 最先在命令行中進入到你所想要復制文件的目錄下再執(zhí)行這條語句 先電腦的文件(不用加路徑,直接文件名加擴展名) 后復制過來的路徑(根目錄/加上父目錄)加文件名(文件名加擴展名)
androidcreate avd –nameandroid2.2 –target 8 創(chuàng)建模擬器
emulator–avd advname 啟動模擬器 例如:emulator –avd 2.2 (2.2為我們創(chuàng)建設(shè)備名稱)
mksdcard20m d:/sdcard.img創(chuàng)建sdcard
3.問題及解決
1)adb是用socket寫的。而socket本身不穩(wěn)定,這樣當網(wǎng)絡(luò)出現(xiàn)了問題,或者端口被占用掉,adb就會掛掉, socket也就綁定失敗了。
解決方式1:
在DDMS中,左側(cè)設(shè)備這邊有個倒三角小箭頭,點開,列表中有個選項:Reset adb.作用是將adb殺死,再重啟。
解決方式2:
其實DDMS所做的原理是這樣的,我們也可以直接這樣做:
在命令行里輸入:adb kill-server
這時我們在使用模擬器時會報這樣的錯誤:
Adbconnection Error 遠程主機強迫關(guān)閉了一個現(xiàn)有的連接
我們需要在命令行輸入:adb start-server 服務(wù)就會重啟。
但是如果服務(wù)沒有啟動,說明adb.exe進程可能無響應(yīng),在任務(wù)管理器中,進程選項卡中,找到adb.exe的進程,結(jié)束該進程。
如果發(fā)現(xiàn)進程結(jié)束不了,出現(xiàn):can’t find 5037的錯誤,說明有應(yīng)用軟件,將5037這個端口號占用,在命令行中輸入:netstat -ano列出當前端口號占用情況
這其中,外部地址為:端口號可以通過查找端口號為5037lai 查看是哪個PID,再在進程管理器中通過PID,來查看是哪個應(yīng)用占用,結(jié)束應(yīng)用,如果是eclipse占用,屬于正常。
2)360,豌豆莢等第三方手機助手應(yīng)用會內(nèi)置adb,eclipse也會內(nèi)置有adb,這樣當他們同時運行時會造成不同的adb之間搶占同一端口,致使adb不穩(wěn)定影響我們開發(fā).只需關(guān)閉停止這些第三方手機助手的應(yīng)用和服務(wù)即可。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。