Android模擬器和安裝APK文件
以前不知道再哪里看見過這么一句話:Google和百度把現(xiàn)在的人變得白癡了。其實(shí),這 是說的那些一有問題就搜索而不思考的人。我有的時(shí)候懶的話就這樣,不去思考,直接搜索,然后什么都得不到。但是,有的時(shí)候你又會(huì)發(fā)現(xiàn)整個(gè)互聯(lián)網(wǎng)上面的東西 全部都是一樣的,不是你抄我的就是我抄他的,根本就是千篇一律的答案。如果搜索引擎能夠做到讓每個(gè)相同的文件只有一份就好了。
本文引用地址:http://www.ex-cimer.com/article/201610/305388.htm回過頭來你會(huì)發(fā)現(xiàn),做為一個(gè)開發(fā)者,有的時(shí)候,官方文檔是最好的參考資料。而不是Google百度。好了進(jìn)入正題,今天要講的是關(guān)于android模擬器和apk鏡像文件的一些事情。
一.如何正確的啟動(dòng)模擬器(早于Android 1.5的開發(fā)版本跳過此步) :
關(guān)于在eclipse里面如何集成android這些問題就不說了,這寫問題我想還是不用在這里廢話的。要正確的啟動(dòng)模擬,你必須先要?jiǎng)?chuàng)建一個(gè) AVD( Android Virtual Device 虛擬設(shè)備 ) ,你可以創(chuàng)建多個(gè)AVD,但是你的每一個(gè)啟動(dòng)了的模擬器都必須有一個(gè)AVD,這樣你才能正確運(yùn)行。下面是創(chuàng)建AVD的語法(關(guān)于基本的WINDOWS語法 就不贅述了,這都不知道也就不要做開發(fā)了) :
android create avd –target 1 –name myavd (當(dāng)然你需要在CMD里面使用android提供的/tools)
上面這個(gè)動(dòng)作完成之后你就可以在eclipse里面啟動(dòng)android模擬器了,其他事情暫時(shí)不需要做了。如果你想要直接啟動(dòng)模擬器的話,
到tools下面雙擊emulator.exe是行不通的,你必須這樣做:
emulator -avd youravdname (這樣才可以正常啟動(dòng)一個(gè)模擬器的實(shí)例)
【PS:當(dāng)然你也可以在eclipse里面通過AVD管理器建立AVD,那樣更方便,但是作為一個(gè)基于Linux的系統(tǒng),我偏愛Command Line】
二.關(guān)于ADB的基本使用 :
做android開發(fā)的時(shí)候adb工具是必不可少的,而且有的時(shí)候非用不可。當(dāng)你在Windows 中 進(jìn)入android 的tools 之后 只要輸入adb 然后就會(huì)有一大票的
命令提示出來,然后你就可以看看,讀讀,然后你就明白了個(gè)一二三,之后呢可以參考android文檔,里面說得最好了。而常用的估計(jì)是下面
這幾個(gè):
adb shell 【進(jìn)入Linux 控制臺(tái) , 可以使用一些Linux標(biāo)準(zhǔn)的命令,但是不全,還少東西,暈死,閹割了的】
adb install 【這個(gè)就是安裝APK鏡像文件所需要的命令了,之后會(huì)說一些關(guān)于使用這個(gè)命令的問題】
adb push 【講本地文件推送到android模擬器的SD卡里面,等會(huì)說如何去創(chuàng)建一個(gè)SD卡文件】
adb pull 【將android模擬器里面的文件保存到本地】
mksdcard 【語法: mksdcard [-l label] [K|M] 這自然就是創(chuàng)建一個(gè)SD卡的鏡像了,不過在這個(gè)SD ISO里面安裝的APP只是一個(gè)內(nèi)存映像,也就是說,重啟之后還得安裝】
好了先這樣吧!
三.如何創(chuàng)建Android SD卡并將文件拷貝到模擬器里面去:
1. 建立存儲(chǔ)鏡像: mksdcard 1024MB sdcard.iso 【OK】 如果你還想要給這個(gè)SD卡加個(gè)label什么的,隨便,看看上面的語法就知道了;
2. 推送本地文件: adb push /sdcard 你需要將文件放在[sdcard]里面,其他地方你是放不進(jìn)去的。
比如你這樣: adb push hello.jpg / 那么你將得到這么一個(gè)結(jié)果: adb push (Read only file system)
如果你試圖嘗試使用chmod之類的來改變權(quán)限,隨便吧,那是你的模擬器。但是我不推薦這么做,能不能做到我還沒有試過。
不過我倒是試過在shell下使用./filename.apk的方式來運(yùn)行apk文件,事實(shí)證明這樣是不行的。
改變權(quán)限也沒有用,因?yàn)槟阃扑瓦M(jìn)去的文件的owner全部是system,而不是root,哈哈。
3. 【注意】你需要建立SD鏡像之后才能adb push進(jìn)去文件,在你建立sd iso 之前用adb shell 可以看見 sdcard這個(gè)文件的夾沒有任何操作權(quán)限,但是建立完之后就是rw了(就是可讀可寫);
4. 如何讓模擬器啟動(dòng)的時(shí)候加載sd鏡像,方法有兩種,首先還是command line : emulator -avd avdname -sdcard filename.iso 。在eclipse里面的話就需要在你的運(yùn)行配置文件夾對(duì)話框里面給target加上sdcard參數(shù)了。是這樣的,打開你的運(yùn)行配置框,在target 這個(gè)標(biāo)簽的最下面有個(gè)[addtional emulator command line options , 在里面填入 -sdcard filename.iso 就OK 了]
5. 【上面這些有cmd參與的動(dòng)作你都可以在eclipse里面完成】
四.如何在android模擬器中安裝APK鏡像文件:
1. 在安裝之前,我建議你打開一個(gè)東西,那就是 eclipse 里面的 Google 提供的 DDMS — 很好很強(qiáng)大的工具 。這樣打開: window — open perspective — other — DDMS 打開就好了,啟動(dòng)模擬器的時(shí)候效果就出來了;
2. 帶參數(shù)的啟動(dòng)模擬器: emulator -avd avdname -sdcard filename.iso 【或者eclipse里面直接啟動(dòng)】
3. 【啟動(dòng)完成之后】到tools里面這樣做: adb install filename.apk
4. 在你做第三步按下回車的時(shí)候,請(qǐng)把視線轉(zhuǎn)移到DDMS里面,這里會(huì)有很多LOG信息出來,最大化LOG CAT最爽了。一般第一次安裝的時(shí)候你都不會(huì)安裝成功,會(huì)有一些小毛病,主要是android的安全控制有點(diǎn)嚴(yán)格,你可以在LOG CAT里面看到,出現(xiàn)紅色字符的行一般都是問題所在,對(duì)應(yīng)解決之一般就OK了哦 。 如果使用eclipse開發(fā)的話,AndroidMianfest.xml這中東西一般都不會(huì)有錯(cuò)。打個(gè)簽名包就沒問題了。
5. 如果上面你安裝成功了的話,你就可以在模擬器的桌面里面看到你的程序了,那么現(xiàn)在,all right,enjoy it 。
6. 卸載: 到 /data/app 里面把你對(duì)應(yīng)的app remove了就OK 了 。 rm filename , 需要在adb shell 里面完成。
評(píng)論