Android Studio2.0 教程從入門到精通MAC版 - 入門篇

第一篇介紹了Android Studio開發(fā)環(huán)境以及Genymotion虛擬機安裝方法按灶,本節(jié)將給大家介紹如何使用Android Studio開發(fā)應(yīng)用。

開發(fā)第一應(yīng)用

可以開發(fā)屬于自己的應(yīng)用,是否有點小激動雁仲?好吧厨钻!讓我們開始,首先點擊Start a new Android Studio Project創(chuàng)建工程:


2016-03-23_17-18-54.png

接下來需要輸入應(yīng)用名稱(第一個字母要大寫)燃异、公司域以及指定應(yīng)用存放目錄携狭,點擊Next按鈕進(jìn)入下一步:


2016-04-15_10-39-57.png

如果第一個字母不是大寫,會提示:The application name for most app begins with an uppercase letter

接下來需要選擇開發(fā)什么設(shè)備(可選“手機和平板”回俐、“穿戴(Wear)”逛腿、“TV”,“車載(Android Auto)”等)上的應(yīng)用仅颇,以及確定最小SDK的版本號单默。

Minimum SDK的作用是在應(yīng)用安裝前,會對設(shè)備的Android版本做校驗忘瓦,如果設(shè)備的Android版本低于這個最小版本會阻止用戶安裝應(yīng)用搁廓。

2016-04-15_13-57-21.png

如果不知道怎么選擇最小版本可以點擊Help me choose看看每個版本的分布圖表和描述:


2016-04-15_13-55-37.png

繼續(xù)點擊Next按鈕進(jìn)行下一步,由于我們先前沒有裝2.3.3這個版本的SDK耕皮,Android Studio會自動幫我們下載需要的組件境蜕。這個過程會有些慢。


2016-04-15_13-59-23.png

接下來我們需要通過形象友好的GUI模板明场,來選擇我們第一個Activity的樣式:
2016-04-15_14-00-21.png

然后需要給Activity和Layout起一個名字汽摹。
2016-04-15_14-00-51.png

點擊Finish按鈕后,Android Studio開始創(chuàng)建并編譯應(yīng)用苦锨。


2016-04-15_14-01-40.png

編譯結(jié)束后逼泣,我們就可以看到Android Studio的IDE界面了。
2016-04-15_21-46-59.png

從圖上可以看出Android Studio已經(jīng)幫我們將工程組織的很好了舟舒。

界面介紹

2016-04-16_15-11-16.png

如上圖所示拉庶,我將界面分為5個區(qū)域做詳細(xì)的講解:

區(qū)域1介紹

2016-04-16_15-26-58.png

這個區(qū)域是運行和調(diào)試相關(guān)的操作。

1秃励、編譯2中顯示的模塊

2氏仗、當(dāng)前項目的模塊列表

3、運行2中顯示的模塊

4夺鲜、調(diào)試2中顯示的模塊

5皆尔、測試2中顯示的模塊代碼覆蓋率

6、調(diào)試安卓運行的進(jìn)程

7币励、重新運行2中顯示的模塊

8慷蠕、停止運行2中顯示的模塊

區(qū)域2介紹

2016-04-16_16-16-08.png

這個區(qū)域主要是和Android設(shè)備和虛擬機相關(guān)的操作。

1食呻、同步工程的Gradle文件流炕,一般在Gradle配置被修改的時候需要同步一下

2澎现、虛擬設(shè)備管理

3、Android SDK管理

4每辟、Android設(shè)備監(jiān)控

5剑辫、Genymontion模擬器(需要裝Genymontion插件,安裝篇[模擬器安裝]部分)

區(qū)域3介紹

2016-04-16_16-37-07.png

這個區(qū)域主要是工程文件資源等相關(guān)的操作渠欺。

1妹蔽、展示項目中文件的組織方式,默認(rèn)是以Android方式展示的峻堰,可選擇“Project讹开、Packages盅视、Scratches捐名、ProjectFiles、Problems…”等展示方式闹击。平時用的最多的就Android和Project兩種镶蹋。

2、定位當(dāng)前打開文件在工程目錄中的位置赏半。

3贺归、關(guān)閉工程目錄中所有的展開項。

4断箫、額外的一些系統(tǒng)配置拂酣,點開后是一個彈出菜單:


2016-04-16_17-13-09.png

Autoscroll to Source 和 Autoscroll from Source兩個勾選起來后,Android Studio會自動定位當(dāng)前編輯文件在工程中的位置仲义,用起來會很爽婶熬。其他功能大家可以自己摸索摸索。

區(qū)域4介紹

2016-04-16_17-19-19.png

這個區(qū)域主要是用來編寫代碼和設(shè)計布局埃撵。

1赵颅、已打開的文件的Tab頁。(在Tab頁上按下Cmd鍵 + 點擊鼠標(biāo)會出現(xiàn)一個彈出菜單會有驚喜哦T萘酢)

2饺谬、UI布局預(yù)覽區(qū)域。

3谣拣、布局編輯模式切換募寨,對于一些老鳥來說更喜歡通過Text來編輯布局,新手可以試試Design編輯布局森缠,編輯后再切換到Text模式拔鹰,對于學(xué)習(xí)Android布局設(shè)計很有幫助桐汤。

區(qū)域5介紹

2016-04-23_16-01-27.png

這個區(qū)域大部分是用來查看一些輸出信息的碉克。

1、終端 - 喜歡命令行操作的伙伴不用額外啟動終端了旨枯。

2、信息 - 工程編譯的一些輸出信息例书。

3锣尉、監(jiān)控 - 可以查看應(yīng)用的一些輸出信息。

4决采、運行 - 應(yīng)用運行后的一些相關(guān)信息自沧。

5、TODO - 標(biāo)有TOTO注釋的列表树瞭。

6拇厢、事件 - 一些事件日志。

7晒喷、Gradle控制臺孝偎,通過這個可以了解Gradle構(gòu)建應(yīng)用的時候一些輸出信息。

Android Studio目錄結(jié)構(gòu)

2016-04-23_17-27-07.png

1凉敲、Gradle編譯系統(tǒng)衣盾,版本由wrapper指定

2、Android Studio IDE所需要的文件

3爷抓、應(yīng)用相關(guān)文件的存放目錄

4势决、編譯后產(chǎn)生的相關(guān)文件

5、存放相關(guān)依賴庫

6蓝撇、代碼存放目錄

7果复、資源文件存放目錄(包括:布局、圖像渤昌、樣式等等)

8虽抄、應(yīng)用程序的基本信息清單,描述哪些個組件是存在的

9耘沼、git版本管理忽略文件极颓,標(biāo)記出哪些文件不用進(jìn)入git庫中

10、Android Studio的工程文件

11群嗤、模塊的gradle相關(guān)配置

12菠隆、代碼混淆規(guī)則配置

13、工程的gradle相關(guān)配置

14狂秘、gradle相關(guān)的全局屬性設(shè)置

15骇径、本地屬性設(shè)置(key設(shè)置,android sdk位置等屬性)

應(yīng)用開發(fā)調(diào)試

2016-04-25_22-43-16.png

如上圖1所示在需要調(diào)試的行號處點擊設(shè)置斷點者春,然后點擊2所示的Debug按鈕(或直接按下Ctrl+D快捷鍵)開始調(diào)試破衔。


2016-04-25_23-08-41.png

如上圖所示Android Studio下方出現(xiàn)了調(diào)試視圖。

1钱烟、當(dāng)前程序停留的代碼行

2晰筛、調(diào)試相關(guān)的一些按鈕

3嫡丙、程序調(diào)用棧區(qū),該區(qū)域顯示了程序執(zhí)行到斷點處所調(diào)用過的所有方法读第,越下面的越早被調(diào)用曙博。

4、局部變量觀察區(qū)

5怜瞒、用戶自定義變量觀察區(qū)

2016-04-26_15-45-50.png

1父泳、step over(F8) - 程序向下執(zhí)行一行,如果當(dāng)前行有方法調(diào)用吴汪,這個方法執(zhí)行完畢返回惠窄,然后到下一行。

2漾橙、step into(F7) - 程序向下執(zhí)行一行杆融,如果當(dāng)前行有用戶自定義方法(非官方類庫方法)調(diào)用,則進(jìn)入該方法近刘。

3擒贸、Force step into(Alt+Shift+F7) - 程序向下執(zhí)行一行,如果當(dāng)前行有方法調(diào)用觉渴,則進(jìn)入該方法。

4徽惋、step out(Shift+F8) - 如果在調(diào)試的時候你進(jìn)入了一個方法案淋,并覺得該方法沒有問題,你就可以使用step out跳出該方法险绘,返回到該方法被調(diào)用處的下一行語句踢京。值得注意的是,該方法已執(zhí)行完畢宦棺。

5瓣距、Drop Frame - 點擊該按鈕后,你將返回到當(dāng)前方法的調(diào)用處重新執(zhí)行代咸,并且所有上下文變量的值也回到那個時候蹈丸。只要調(diào)用鏈中還有上級方法,可以跳到其中的任何一個方法呐芥。

6逻杖、Run to cursor(Alt+F9) - 一直運行到光標(biāo)所在的位置。

7思瘟、Resume Program(Alt+Cmd+R) - 一直運行程序直到碰到下一個斷點荸百。

8、View Backpoints(Shift+Cmd+F8) - 查看你設(shè)置過的所有斷點并可以設(shè)置斷點的一些屬性

2016-04-26_17-12-03.png

1滨攻、列出了所有程序中設(shè)置的斷點

2够话、可以輸入條件蓝翰,在條件成立后斷點才起作用(例如:在輸入框中輸入 i == 8),這種帶條件斷點在實際開發(fā)過程中非常有用女嘲。也可以通過右鍵點擊斷點來設(shè)置條件斷點霎箍,如下圖:

2016-04-26_17-28-05.png

9、Mute Backpoints - 選中后所有的斷點別設(shè)置成無效狀態(tài)澡为。再次點擊可以重新設(shè)置所有斷點有效漂坏。

好了,到這里調(diào)試相關(guān)的都介紹完了媒至。

應(yīng)用打包簽名

基礎(chǔ)

一個 Android Studio 項目中顶别,會存在多個 .gradle 文件。其中拒啰, project 目錄下存在一個 build.gradle 文件和每一個 module 會存在一個 build.gradle 文件驯绎。

  • 工程中的build.gradle
buildscript {
    repositories {   
      jcenter()   // 聲明使用 maven 倉庫
    }
    dependencies {   
      // 依賴android提供的2.1.0-alpha5的gradle build
      classpath 'com.android.tools.build:gradle:2.1.0-alpha5'
    }
}
// 為所有的工程的repositories配置為jcenters
allprojects {
    repositories {
    jcenter()
    }
}

// 清楚工程的任務(wù)
task clean(type: Delete) {
    delete rootProject.buildDir
}
  • 模塊中的build.gradle
模塊中的build.gradle
// 這表示該module是一個app module
apply plugin: 'com.android.application'
android {
    // 基于哪個版本編譯
    compileSdkVersion 23
    // 基于哪個構(gòu)建工具版本進(jìn)行構(gòu)建的
    buildToolsVersion "23.0.3"

    // 缺省配置主要包括:應(yīng)用ID,最小SDK版本谋旦,目標(biāo)SDK版本剩失,應(yīng)用版本號、應(yīng)用版本名
    ???????defaultConfig {
        applicationId "open_open.com.helloworld"
        minSdkVersion 10
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }

    // buildTypes是構(gòu)建類型册着,常用的有release和debug兩種拴孤,可以在這里面啟用混淆,啟用zipAlign以及配置簽名信息等甲捏。
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

}

// dependencies它定義了該module需要依賴的jar演熟,aar,jcenter庫信息司顿。
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.2.1'
}

打包簽名

選擇Build->Generate Signed APK...芒粹,如下圖:


2016-04-26_21-51-28.png

在彈窗中一直Next直到下面這個界面:


2016-04-26_21-54-27.png

在沒有Key的情況下,我們可以先點擊Create new...按鈕來創(chuàng)建一個Key大溜,創(chuàng)建過程很簡單化漆,如下圖:
2016-04-26_21-54-27.png

如果你已經(jīng)存在Key了,那就點擊Choose existing...按鈕指定.jks文件位置,如下圖:


2016-04-26_22-08-27.png

輸入Key store password和Key password(在創(chuàng)建Key的時候輸入的那兩個密碼)钦奋,點擊Next按鈕:


2016-04-26_22-14-21.png

接下來就點擊Finish按鈕座云,坐等AS打包簽名完成,簽名完成后AS會提示我們:


2016-04-26_22-20-13.png

點擊Revaal in Finder锨苏,可以找到我們簽名好的APK文件:
2016-04-26_22-29-22.png

系列教程

Android Studio2.0 教程從入門到精通MAC版 - 安裝篇

Android Studio2.0 教程從入門到精通MAC版 - 入門篇

Android Studio2.0 教程從入門到精通MAC版 - 提高篇

本站原創(chuàng)疙教,轉(zhuǎn)載時保留以下信息:
本文轉(zhuǎn)自:深度開源(open-open.com)
原文標(biāo)題:Android Studio2.0 教程從入門到精通MAC版 - 入門篇
原文地址:http://www.open-open.com/lib/view/open1466732896151.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市伞租,隨后出現(xiàn)的幾起案子贞谓,更是在濱河造成了極大的恐慌,老刑警劉巖葵诈,帶你破解...
    沈念sama閱讀 216,470評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件裸弦,死亡現(xiàn)場離奇詭異祟同,居然都是意外死亡,警方通過查閱死者的電腦和手機理疙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評論 3 392
  • 文/潘曉璐 我一進(jìn)店門晕城,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人窖贤,你說我怎么就攤上這事砖顷。” “怎么了赃梧?”我有些...
    開封第一講書人閱讀 162,577評論 0 353
  • 文/不壞的土叔 我叫張陵滤蝠,是天一觀的道長。 經(jīng)常有香客問我授嘀,道長物咳,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,176評論 1 292
  • 正文 為了忘掉前任蹄皱,我火速辦了婚禮览闰,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘巷折。我一直安慰自己压鉴,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,189評論 6 388
  • 文/花漫 我一把揭開白布盔几。 她就那樣靜靜地躺著晴弃,像睡著了一般。 火紅的嫁衣襯著肌膚如雪逊拍。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,155評論 1 299
  • 那天际邻,我揣著相機與錄音芯丧,去河邊找鬼。 笑死世曾,一個胖子當(dāng)著我的面吹牛缨恒,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播轮听,決...
    沈念sama閱讀 40,041評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼骗露,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了血巍?” 一聲冷哼從身側(cè)響起萧锉,我...
    開封第一講書人閱讀 38,903評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎述寡,沒想到半個月后柿隙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體叶洞,經(jīng)...
    沈念sama閱讀 45,319評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,539評論 2 332
  • 正文 我和宋清朗相戀三年禀崖,在試婚紗的時候發(fā)現(xiàn)自己被綠了衩辟。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,703評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡波附,死狀恐怖艺晴,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情掸屡,我是刑警寧澤封寞,帶...
    沈念sama閱讀 35,417評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站折晦,受9級特大地震影響钥星,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜满着,卻給世界環(huán)境...
    茶點故事閱讀 41,013評論 3 325
  • 文/蒙蒙 一谦炒、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧风喇,春花似錦宁改、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至耙考,卻和暖如春谜喊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背倦始。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評論 1 269
  • 我被黑心中介騙來泰國打工斗遏, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人鞋邑。 一個月前我還...
    沈念sama閱讀 47,711評論 2 368
  • 正文 我出身青樓诵次,卻偏偏與公主長得像,于是被迫代替她去往敵國和親枚碗。 傳聞我的和親對象是個殘疾皇子逾一,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,601評論 2 353

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