大家好,我是森森
這節(jié)課我們終于可以寫(xiě)程序了,這節(jié)課給大家介紹一個(gè)helloworld工程,并部署到模擬器.
打開(kāi)eclipse,第一次打開(kāi),有個(gè)歡迎界面,welcome,是一些簡(jiǎn)單的介紹,關(guān)閉就可以了,eclipse一般會(huì)自動(dòng)尋找它所對(duì)應(yīng)的開(kāi)發(fā)環(huán)境,用趙本山賣車的小品的話說(shuō)就是,自己就找去了.但是有的不會(huì),可能比較傻吧,也有的時(shí)候電腦有兩個(gè)SDK,會(huì)找錯(cuò).
這時(shí)候我們可以手動(dòng)配置一下.window ?preferences ??Android ??SDK location,找到你的解壓包的SDK路徑,填到這兒即可,演示.
接下來(lái)我們要?jiǎng)?chuàng)建第一個(gè)安卓應(yīng)用helloworld,點(diǎn)擊右鍵new -Android application project,有的同學(xué)列表里可能沒(méi)有這個(gè)選項(xiàng),那么點(diǎn)擊右鍵,other,Android,Android application project,點(diǎn)擊下一步,彈出一個(gè)界面,這個(gè)是咱們應(yīng)用程序的名稱,起名叫helloworld,下邊這個(gè)是工程名稱,工程名一般和應(yīng)用名稱是一致的,下邊這個(gè)package name,包名,一般是公司域名倒著寫(xiě),com.sen sen.hello world.
接著往下看,minimum required sdk,大家在裝一些windows游戲的時(shí)候,光盤(pán)上一般有個(gè)說(shuō)明,最低要求運(yùn)行在window2000的系統(tǒng)上,minimum required sdk,代表的含義就是你當(dāng)前的應(yīng)用程序最低運(yùn)行在哪個(gè)版本的手機(jī)上,如果你說(shuō)我要運(yùn)行在2.2版本,你就寫(xiě)8,如果想運(yùn)行在2.3版本,你就寫(xiě)9,選擇的9的話以后1.5的手機(jī),1.6安卓系統(tǒng)手機(jī)就安裝不了我們的應(yīng)用程序.這個(gè)就好像賣衣服的,多少元多少元起,低于這個(gè)價(jià)格就買不到了,以前我就喜歡逛這樣的店,29元起,進(jìn)去后發(fā)現(xiàn),只有內(nèi)褲是29元一條.
繼續(xù)說(shuō),大家看一下下邊這有一個(gè)說(shuō)明,如果我們把SDK的版本設(shè)置到8以后,或者9以后,就可以覆蓋市場(chǎng)上95/100的安卓手機(jī),目前在公司開(kāi)發(fā)在市面上,他們兼容的最低版本一般就到2.3了,那大家想一下,因?yàn)槟阆胍嫒莸桶姹?要有一些開(kāi)發(fā)的成本,另外呢,如果一個(gè)用戶現(xiàn)在還在用安卓1.幾的手機(jī),說(shuō)明他已經(jīng)好多年沒(méi)有換手機(jī)了,那這種用戶,也賺不到什么錢了,所以這部分人就可以忽略掉了,媽呀,一錄課程,發(fā)現(xiàn),我確實(shí)該換手機(jī)了.
第二個(gè)是target SDK,這個(gè)代表的是最高兼容到哪個(gè)版本,一般選最高的,為什么呢?很簡(jiǎn)單,出了個(gè)新系統(tǒng),你應(yīng)用不兼容,你這不找死嗎,想下都下不了.compile with ,這個(gè)是編譯,編譯就是把java代碼打包成APK,裝到手機(jī)上,是編譯用的環(huán)境,一般也選最高的,但是推薦大家使用這個(gè)16的,因?yàn)檫@個(gè)編譯環(huán)境是目前最穩(wěn)定的.繼續(xù)看這個(gè)theme,它是應(yīng)用程序顯示的風(fēng)格和主題,目前我們先寫(xiě)none,沒(méi)有任何風(fēng)格,下邊這個(gè)幾個(gè),eclipse其實(shí)也沒(méi)有支持,出來(lái)的效果都是一樣的,點(diǎn)擊下一步,看這幾個(gè)選項(xiàng),create custom lancher,這是選擇自定義的圖標(biāo),第二個(gè),create activity,關(guān)于activity,后面會(huì)詳細(xì)給大家介紹,實(shí)際上代表的是用戶所看到的界面.我們所有程序基本都有界面,所以選上這個(gè).
下邊這個(gè),mark this project as a library,這個(gè)如果勾選上,它就不再是一個(gè)應(yīng)用了,而是一個(gè)庫(kù)了,這個(gè)庫(kù)是什么呢,優(yōu)衣庫(kù)的庫(kù),是給別的應(yīng)用程序提供依賴的,就像一個(gè)汽車要跑,必須得依賴油,電腦運(yùn)行依賴CPU,差不多就是這個(gè)意思,目前咱們用不到,不用勾選.下邊這個(gè)是我們把這個(gè)工程創(chuàng)建在了這個(gè)工作空間里.
然后點(diǎn)擊下一步,這一步是讓我們選擇一個(gè)圖標(biāo),點(diǎn)擊clipart,選擇一個(gè),下邊顏色也可以指定,下一步,創(chuàng)建一個(gè)activity,選擇默認(rèn)的這個(gè)空白的就好,下一步,這個(gè)是,activity叫什么名字,還有加載哪個(gè)布局,直接點(diǎn)擊下一步就好,點(diǎn)擊Finnish,工程就創(chuàng)建好了,這個(gè)adt很強(qiáng)大,它會(huì)自動(dòng)幫我們寫(xiě)一套最簡(jiǎn)單的代碼,應(yīng)用程序的UI也給預(yù)覽出來(lái)了,看中間有個(gè)helloworld,咱們?nèi)绾芜\(yùn)行這個(gè)程序呢,那就需要一個(gè)模擬器或者真實(shí)的手機(jī)了,方便你們看到,我先用模擬器,模擬器管理器上課已經(jīng)介紹了,就是這個(gè)按鈕,manager,點(diǎn)擊,new,這是創(chuàng)建,點(diǎn)擊,這里面選項(xiàng)比較多.
我一個(gè)個(gè)解釋,AVD name,這是模擬器的名字,可以隨便起,你喜歡什么手機(jī)就叫什么手機(jī),比如說(shuō)叫iphone7吧,
第二個(gè),device,這是模擬器的型號(hào),有很多,前四個(gè)都是谷歌的親兒子,谷歌出的,配置都已經(jīng)寫(xiě)好了,3.7是3.7寸的意思,分辨率480*800的,我們從下往上看,這里預(yù)設(shè)了很多的分辨率.最小的屏幕2.7寸,最大的平板10.1寸,他們的分辨率分別是什么呢?看這兒有一些概念,QVGA,HVGA,WVGA,FWVGA,分別代表什么含義呢?VGA,Video Graphics Array其實(shí)是圖形顯示的一種接口,是過(guò)去顯示器所采用的一種老的標(biāo)準(zhǔn),標(biāo)準(zhǔn)的VGA分辨率是多少呢,480*640,從這個(gè)分辨率又派生出了很多不同的尺寸,就是上邊說(shuō)的那些分辨率,QVGA,Q的意思是quarter的意思,就是1/4,那么寬高就都是VGA的1/2,所以,分辨率就是240*320,HVGA,H就是half的意思,一半,所以分辨率就是,480*320,屏幕分辨率越來(lái)越大哈,比較前幾年可能會(huì)發(fā)現(xiàn),安卓手機(jī)的發(fā)展趨勢(shì)是屏幕越來(lái)越大,而蘋(píng)果呢?是屏幕越來(lái)越長(zhǎng),等發(fā)布到iPhone100的時(shí)候可能就跟金箍棒一樣長(zhǎng)了,金箍棒奶哥幫那個(gè)幫.
WVGA,W的意思是Wide ,就比HVGA要大一些了,480*800了,FWVGA,FWFull Wide,更大一些了,480*854,后來(lái)隨著屏幕越來(lái)越大,用VGA去表示就不太合適了,所以又出了別的規(guī)范,比如說(shuō),720p,分辨率就是720*1280,還有10.1的,就不再是VGA了,,而是WXGA了,1280*800的分辨率,大家創(chuàng)建模擬的時(shí)候,電腦配置高,可以創(chuàng)建一個(gè)屏幕稍微大點(diǎn)的模擬器,如果電腦配置一般,創(chuàng)建一個(gè)320*480的HVGA的模擬器就夠用了,因?yàn)槟M器越大,占內(nèi)存越大.
下邊這兒有一個(gè)target,模擬器采用的環(huán)境,就是模擬器采用的系統(tǒng),所謂刷機(jī)就是刷系統(tǒng),模擬器刷機(jī)就很簡(jiǎn)單了,想創(chuàng)建哪個(gè)就創(chuàng)建哪個(gè)系統(tǒng)的,我們創(chuàng)建一個(gè)4.1.2的吧,這是目前最穩(wěn)定的一個(gè)系統(tǒng),也推薦大家使用這個(gè)版本,下邊這個(gè)是CPU,就是處理器,有Intel的,有arm的,如果大家電腦是Intel的你就選Intel的,如果是arm的就選arm的,
這個(gè)keyboard,就是鍵盤(pán),勾選后會(huì)帶個(gè)鍵盤(pán),這個(gè)skin呢是皮膚,你勾選完后就會(huì)帶個(gè)類似于手機(jī)樣式的皮膚,不勾選就是個(gè)框,拔了毛的鳳凰不如雞,勾選上back Camera ,模擬的后置攝像頭,這個(gè)有三種選擇,一個(gè)是,沒(méi)有攝像頭,一個(gè)是模擬的攝像頭,拍出來(lái)都是小機(jī)器人,還有這個(gè)web camera,就是用你電腦的前置攝像頭拍照,我們選第三個(gè).
下邊有個(gè)memory options,模擬器的內(nèi)存,我們指定512M,VM heap,緩存大小,默認(rèn)是16,大家不要去改他,假如你改大了,模擬器上可以運(yùn)行,但是真機(jī)VM heap要是沒(méi)這么大就會(huì)報(bào)內(nèi)存溢出,下邊是internal storage,手機(jī)默認(rèn)內(nèi)部存儲(chǔ)空間,內(nèi)存大家應(yīng)該都知道吧,就是手機(jī)沒(méi)SD卡的情況下,安裝應(yīng)用或者下載圖片都會(huì)存在內(nèi)存里,內(nèi)存一般200M就夠了.SD卡就不用說(shuō)了吧,現(xiàn)在有的手機(jī)插不了卡了,是手機(jī)廠商想利益最大化就把內(nèi)存卡給焊死了,16G的一個(gè)價(jià),32G的一個(gè)價(jià),兩部手機(jī)能差好幾百,而你去市面上買內(nèi)存卡,也就差幾十塊錢,廠商也是為了賺錢.咱們選擇的時(shí)候千萬(wàn)別選這個(gè)GB,選個(gè)32M就夠了.
下邊是enulation options ,一個(gè)是snapshot,就跟電腦的睡眠差不多,就是會(huì)保存當(dāng)前的狀態(tài),等你下次再次打開(kāi),還是原來(lái)的狀態(tài),比如說(shuō),玩游戲,睡眠后還在游戲狀態(tài),這個(gè)功能很強(qiáng)大,但是不建議咱們用,因?yàn)檫@個(gè)功能會(huì)導(dǎo)致一些問(wèn)題,因?yàn)槟M器不會(huì)重啟了,所以一些開(kāi)機(jī)啟動(dòng)的廣播,還有SD卡的掃描就會(huì)失效了.后邊這個(gè)是,use host GPU,是你用你PC機(jī)上的獨(dú)立顯卡去渲染界面,如果你的電腦配置比較高,有1G獨(dú)立顯存的獨(dú)立顯卡,這個(gè)你就可以勾選,如果你電腦配置不太高,你勾選這個(gè)條目后,你會(huì)發(fā)現(xiàn)模擬器經(jīng)辰慊簦花屏,所以也不建議大家勾選這個(gè)條目
我們?cè)倏匆幌露甲隽耸裁词虑?制定了設(shè)備的名稱,指定了屏幕的大小,版本,處理器類型,前置攝像頭,內(nèi)存,內(nèi)部存儲(chǔ)空間,還有SD卡,點(diǎn)擊OK,這樣一個(gè)愛(ài)瘋7就創(chuàng)建好了,然后點(diǎn)擊start,等待模擬器的啟動(dòng),跟真實(shí)的安卓手機(jī)基本是一樣的,點(diǎn)擊run as,這個(gè)界面跟這個(gè)預(yù)覽界面是一樣的,退出有個(gè)圖標(biāo),一點(diǎn)擊就進(jìn)來(lái)了.
本人Q Q,525902456,如有錯(cuò)誤,歡迎指出,希望交到更多的朋友交流技術(shù).