我的第一個Android程序

一.java都沒咋學好你有什么勇氣學習Andriod開發(fā)证逻?
到目前為止(2018/1/28)我大概只算是java入門吧殖侵,畢竟我只是再慕課網(wǎng)上看完了3季的java入門課程,再實驗樓學習了一下健芭,大概敲了1000多行代碼吧坷虑,好在之前學過C#,也用C#開發(fā)過幾個像樣的網(wǎng)站(好像關系不大,畢竟我只是用C#來訪問數(shù)據(jù)庫)养泡,總之就是自學過幾天java se嗜湃。這么急忙的上手Android的開發(fā)奈应,是因為假期里時間比較多,就想自己瞎折騰一下购披;還有就是想借學習Android實戰(zhàn)一下自己所學的java知識钥组,小學生都學習python了,弄的我壓力一直好大今瀑。幾天學習下來,感覺問題不大点把,其實只是Android 入門的話橘荠,大概java也只需要入門吧。

二.Android開發(fā)環(huán)境的搭建
逛了一下知乎郎逃,發(fā)現(xiàn) Android studio 比eclipse好一些哥童,畢竟Android studio是google開發(fā)的專門用于Android 開發(fā)的工具,比較有名的android入門書籍《第一行代碼》第二版也是用的Android studio,我用下來感覺是這玩意兒太智能了褒翰,代碼自動補全功能相當強大贮懈,和pycharm差不多吧,比visual studio好用优训。
1:準備工作
--JDK:這個應該不用準備吧朵你,畢竟你的電腦上肯定已經(jīng)有了,沒有的話只能說明java都沒學揣非。
--Android SDK :Android開發(fā)工具包抡医,在開發(fā)java程序時需要引入該工具包,來使用Android相應的API,也可之前不下在早敬,安裝Android studio時忌傻,軟件會提醒我們一并安裝
--Android studio : google被墻,不過好在有中文社區(qū)http://www.android-studio.org/
下載速度還行搞监,3.0版681M水孩,點擊這個安裝文件,傻瓜式操作大多步驟都是默認然后next就行了琐驴,會幫我們安裝Android studio 和Android sdk
2:走過的坑
2-1.安裝結束俘种,剛要創(chuàng)建project時,彈出unable to access android sdk add-on list
不能成功將android sdk 添加到列表(大概好像是這樣翻譯的吧)棍矛,總之就是android sdk 沒有安裝成功安疗,走了點彎路,我找到了android skd 的安裝路徑够委,有個sdk manage.exe 的可執(zhí)行文件荐类,我們執(zhí)行一下這個文件,至于上面的AVD manage.exe是安卓虛擬設備茁帽,既然是安卓開發(fā)玉罐,那肯定需要它了屈嗤,當我們也可以用真機來跑測試,回到sdk.mamage,

image.png

三.創(chuàng)建項目
1.填寫應用名稱吊输,公司域名


image.png

2.這里的minimum sdk是可兼容的最低版本饶号,我選擇API 15 也就是android 4.0版,這應該可以兼容目前為止 所有的Android 手機了吧季蚂,畢竟Android 都出到8.0版了茫船,
其他選項是電視,穿戴設備扭屁,汽車應用的軟件開發(fā)


image.png

3.接下來就是創(chuàng)建活動了算谈,這里我們選擇Empty Activity來創(chuàng)建一個活動


image.png

4.填寫活動名,和布局名,點擊fish


image.png

5.項目就創(chuàng)建好了


image.png

6.創(chuàng)建Android 模擬器


image.png

點擊最左邊的按鈕


image.png

選擇合適的虛擬設備
image.png

選擇版本料滥,這里我選擇adnroid7.0,其他版本然眼,如果顯示null 點擊downlo下載即可


image.png

最后確認一遍模擬器的配置,點擊finish即可

7.體驗模擬器


image.png

image.png

這模擬器葵腹,還有有那么一點點高端的呢

這里有兩個問題:
7-1.最后finish那高每,是灰色即創(chuàng)建不了模擬器,這里大概原因是電腦中的某個東東不允許你創(chuàng)建模擬器!


IMG_20180126_211627.jpg

解決方法:重啟電腦践宴,電腦還沒開機之前按F2 進入BIOS界面 進入Configration,將lnterl Vitual Technology [Disable] 改為Enabled, 這時打開Android studio鲸匿,就可以創(chuàng)建虛擬機了,同時我還想說一句浴井,我只是想看到晒骇,編程界的經(jīng)典語句"Hello World ",我容易嗎


v2-94b046ff998812169f9dfd574fecafea_r.jpg

7-2.啟動了模擬器磺浙,電腦會有些卡頓洪囤,在敲代碼時,智能提示可能不會出來撕氧,就連回車都有延遲瘤缩,我的解決方式是每次運行完程序都關閉模擬器,于是每次運行程序都要重啟模擬器伦泥,大概需要2分鐘左右才能運行一遍程序剥啤,體驗極差;還有就是一些功能只能運行在真機上面不脯,例如手機到運用手機的多媒體府怯,調用手機攝像頭等,這時只能用真機防楷。方法很簡單牺丙,電腦上安裝360手機助手即可,因為每次運行都要將程序安裝到手機上,所以手機設置時要允許通過USB安裝程序


Screenshot_2018-01-28-14-45-09-850_com.android.se.png

8.運行程序
what? 一行代碼都沒寫就運行程序冲簿,還有這種操作粟判,先別急,我們先運行一下看看峦剔。


image.png

看到菜單欄有這么一個東西档礁,左邊的小錘是編譯程序,中間貌似可以同過下拉列表框選擇東西吝沫,沒錯呻澜,它就是選擇你想要運行的程序,最右邊運行程序


image.png

點擊就會讓你選擇運行程序的設備惨险,最上面時我本人的android 手機易迹,下面時我們剛剛創(chuàng)建的虛擬設備
Screenshot_2018-01-28-15-52-49-922_com.example.co.png
image.png

四.分析我的第一個android 程序
我們把項目結構從android模式,切換到project模式平道,可以看到如下的結構


image.png
  1. .gradle和.idle
    android studio 自動生成我一些文件,無需關心
    2.app
    項目代碼和資源幾乎都放在這個目錄下


    image.png

    2-1.bulid:目錄里主要包含編譯時自動生成的一些文件供炼;
    2-2.lib:如果項目中用到第三方的jar包一屋,就需要把這些jar包,放在lib目錄下袋哼,這個目錄下的jar包會自動的添加進構建路徑里去
    2-3.android test :編寫android test測試用例的,用于進行一些自動化測試
    2-4.java:編寫java程序
    2-5.res:放置項目中用到的所有圖片冀墨,字符串,布局資源涛贯,其中圖片放在drawable目錄下诽嘉,布局放在layout目錄下,字符串放在values目錄下
    2-6.AndroidManifest.xml
    整個項目的配置文件弟翘,項目中用到的所有組件都需要在這個文件下注冊虫腋,此外還可以為應用程序添加權限聲明
    2-7.test: 再該文件下編寫unit test測試用例
    2-8.proguard-rules.pro:指定代碼的混淆規(guī)則,防止代碼被別人破解

其他的目錄大多無需關心稀余。

五.代碼分析悦冀。
1.java代碼


image.png

MainActivity繼承于AppCompatActivity,可以將Activity在各個版本系統(tǒng)新的功能和特性向下兼容,onCreate 方法的最后一行 調用了setContentView()方法為當前的活動引入了一個名為activity_main的布局睛琳,setcontent()方法盒蟆,我們傳進去的參數(shù)一般是一個布局文件的id,項目中的如何資源都會在R文件中生成一個唯一的id,因此我們用R.layot.布局文件名,接下來就來看看布局文件师骗;
2.布局文件(layout目錄下)


image.png

左邊是它的代碼历等,我們可以在最后一行看到 hello world 的字樣,同時我們在右邊的設計視圖下也看到了辟癌,hello world的內(nèi)容寒屯。我們之前說過組件都需要在AndroidMianifest.xml中注冊的,那我們再來看看這個文件吧
3.在AndroidMianfest中注冊
image.png

這里最重要的就是愿待,一個應用程序會有很多個活動浩螺,當程序啟動的時候靴患,我們需要指定首先啟動哪一個活動,這時就用到了<intent-filter></intent-filter>,inttent-filter 中的兩行代碼很關鍵要出,<actoin android:name="android.intent.action.MAIN"> ,<category android:name = "android.intent.category.LUANCHER">,表示MainActivity是這個活動的主活動鸳君。當點擊這個App時首先啟動的就是這個主活動。

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末患蹂,一起剝皮案震驚了整個濱河市或颊,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌传于,老刑警劉巖囱挑,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異沼溜,居然都是意外死亡平挑,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門系草,熙熙樓的掌柜王于貴愁眉苦臉地迎上來通熄,“玉大人,你說我怎么就攤上這事找都〈奖妫” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵能耻,是天一觀的道長赏枚。 經(jīng)常有香客問我,道長晓猛,這世上最難降的妖魔是什么饿幅? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮戒职,結果婚禮上诫睬,老公的妹妹穿的比我還像新娘。我一直安慰自己帕涌,他們只是感情好摄凡,可當我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蚓曼,像睡著了一般亲澡。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上纫版,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天床绪,我揣著相機與錄音,去河邊找鬼。 笑死癞己,一個胖子當著我的面吹牛膀斋,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播痹雅,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼仰担,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了绩社?” 一聲冷哼從身側響起摔蓝,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎愉耙,沒想到半個月后贮尉,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡朴沿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年猜谚,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片赌渣。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡龄毡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出锡垄,到底是詐尸還是另有隱情,我是刑警寧澤祭隔,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布货岭,位于F島的核電站,受9級特大地震影響疾渴,放射性物質發(fā)生泄漏千贯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一搞坝、第九天 我趴在偏房一處隱蔽的房頂上張望搔谴。 院中可真熱鬧,春花似錦桩撮、人聲如沸敦第。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽芜果。三九已至,卻和暖如春融师,著一層夾襖步出監(jiān)牢的瞬間右钾,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留舀射,地道東北人窘茁。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像脆烟,于是被迫代替她去往敵國和親山林。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,452評論 2 348

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,737評論 25 707
  • kubernetes借助系統(tǒng)的OOM KILL提升服務質量浩淘,至于什么是OOM KILL可以去網(wǎng)上搜一下這里不再班門...
    YiQinGuo閱讀 3,936評論 0 1
  • 真的很希望你是這樣的人张抄, 不喜不悲砂蔽,與世無爭, 明白什么是自己真正想要署惯, 每天安靜的過著自己的生活左驾, 不被得失羈絆...
    YNM解說閱讀 243評論 0 2
  • 跟一個陌生人相識在周四,每天深刻有趣的聊天感覺對方就像是許久未見的老朋友极谊,“我好像在哪兒見過你”诡右,那種前世相逢的感...
    希湫明閱讀 1,570評論 0 2