區域 1 介紹
這個區域是運行和調試相關的操作。
1、編譯2中顯示的模塊 2、當前項目的模塊列表 3、運行2中顯示的模塊 4、調試2中顯示的模塊
5、測試2中顯示的模塊代碼覆蓋率 6、調試安卓運行的進程 7、重新運行2中顯示的模塊 8、停止運行2中顯示的模塊
區域2介紹
這個區域主要是和Android設備和虛擬機相關的操作。
1、同步工程的Gradle文件,一般在Gradle配置被修改的時候需要同步一下
2、虛擬設備管理 3、Android SDK管理 4、Android設備監控
5、Genymontion模擬器(需要裝Genymontion插件,安裝篇[模擬器安裝]部分)
區域 3 介紹
這個區域主要是工程文件資源等相關的操作。
1、展示項目中文件的組織方式,默認是以Android方式展示的,可選擇“Project、Packages、Scratches、ProjectFiles、Problems…”等展示方式。平時用的最多的就Android和Project兩種。
2、定位當前打開文件在工程目錄中的位置。 3、關閉工程目錄中所有的展開項。
4、額外的一些系統配置,點開后是一個彈出菜單:
Autoscroll to Source 和 Autoscroll from Source兩個勾選起來后,Android Studio會自動定位當前編輯文件在工程中的位置,用起來會很爽。其他功能大家可以自己摸索摸索
區域4介紹
這個區域主要是用來編寫代碼和設計布局。
1、已打開的文件的Tab頁。(在Tab頁上按下Cmd鍵 + 點擊鼠標會出現一個彈出菜單會有驚喜哦!)
2、UI布局預覽區域。
3、布局編輯模式切換,對於一些老鳥來說更喜歡通過Text來編輯布局,新手可以試試Design編輯布局,編輯后再切換到Text模式,對於學習Android布局設計很有幫助。
這個區域大部分是用來查看一些輸出信息的。
1、終端 - 喜歡命令行操作的伙伴不用額外啟動終端了。
2、信息 - 工程編譯的一些輸出信息。
3、監控 - 可以查看應用的一些輸出信息。
4、運行 - 應用運行后的一些相關信息。
5、TODO - 標有TOTO注釋的列表。
6、事件 - 一些事件日志。
7、Gradle控制台,通過這個可以了解Gradle構建應用的時候一些輸出信息。
Android Studio目錄結構
1、Gradle編譯系統,版本由wrapper指定
2、Android Studio IDE所需要的文件
3、應用相關文件的存放目錄
4、編譯后產生的相關文件
5、存放相關依賴庫
6、代碼存放目錄
7、資源文件存放目錄(包括:布局、圖像、樣式等等)
8、應用程序的基本信息清單,描述哪些個組件是存在的
9、git版本管理忽略文件,標記出哪些文件不用進入git庫中
10、Android Studio的工程文件
11、模塊的gradle相關配置
12、代碼混淆規則配置
13、工程的gradle相關配置
14、gradle相關的全局屬性設置
15、本地屬性設置(key設置,android sdk位置等屬性)
應用開發調試
如上圖1所示在需要調試的行號處點擊設置斷點,然后點擊2所示的Debug按鈕(或直接按下Ctrl+D快捷鍵)開始調試。
如上圖所示Android Studio下方出現了調試視圖。
1、當前程序停留的代碼行
2、調試相關的一些按鈕
3、程序調用棧區,該區域顯示了程序執行到斷點處所調用過的所有方法,越下面的越早被調用。
4、局部變量觀察區
5、用戶自定義變量觀察區
1、step over(F8) - 程序向下執行一行,如果當前行有方法調用,這個方法執行完畢返回,然后到下一行。
2、step into(F7) - 程序向下執行一行,如果當前行有用戶自定義方法(非官方類庫方法)調用,則進入該方法。
3、Force step into(Alt+Shift+F7) - 程序向下執行一行,如果當前行有方法調用,則進入該方法。
4、step out(Shift+F8) - 如果在調試的時候你進入了一個方法,並覺得該方法沒有問題,你就可以使用step out跳出該方法,返回到該方法被調用處的下一行語句。值得注意的是,該方法已執行完畢。
5、Drop Frame - 點擊該按鈕后,你將返回到當前方法的調用處重新執行,並且所有上下文變量的值也回到那個時候。只要調用鏈中還有上級方法,可以跳到其中的任何一個方法。
6、Run to cursor(Alt+F9) - 一直運行到光標所在的位置。
7、Resume Program(Alt+Cmd+R) - 一直運行程序直到碰到下一個斷點。
8、View Backpoints(Shift+Cmd+F8) - 查看你設置過的所有斷點並可以設置斷點的一些屬性
1、列出了所有程序中設置的斷點
2、可以輸入條件,在條件成立后斷點才起作用(例如:在輸入框中輸入 i == 8),這種帶條件斷點在實際開發過程中非常有用。也可以通過右鍵點擊斷點來設置條件斷點,如下圖:
9、Mute Backpoints - 選中后所有的斷點別設置成無效狀態。再次點擊可以重新設置所有斷點有效。
好了,到這里調試相關的都介紹完了。
應用打包簽名
基礎
一個 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() } } // 清楚工程的任務 task clean(type: Delete) { delete rootProject.buildDir }
- 模塊中的build.gradle
模塊中的build.gradle // 這表示該module是一個app module apply plugin: 'com.android.application' android { // 基於哪個版本編譯 compileSdkVersion 23 // 基於哪個構建工具版本進行構建的 buildToolsVersion "23.0.3" // 缺省配置主要包括:應用ID,最小SDK版本,目標SDK版本,應用版本號、應用版本名 defaultConfig { applicationId "open_open.com.helloworld" minSdkVersion 10 targetSdkVersion 23 versionCode 1 versionName "1.0" } // buildTypes是構建類型,常用的有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' }