1. 程式人生 > >android studio 工具使用詳解和快捷鍵使用

android studio 工具使用詳解和快捷鍵使用

可以開發屬於自己的應用,是否有點小激動?好吧!讓我們開始,首先點選Start a new Android Studio Project建立工程:

接下來需要輸入應用名稱(第一個字母要大寫)、公司域以及指定應用存放目錄,點選Next按鈕進入下一步:

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

接下來需要選擇開發什麼裝置(可選“手機和平板”、“穿戴(Wear)”、“TV”,“車載(Android Auto)”等)上的應用,以及確定最小SDK的版本號。

Minimum SDK的作用是在應用安裝前,會對裝置的Android版本做校驗,如果裝置的Android版本低於這個最小版本會阻止使用者安裝應用。

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

繼續點選Next按鈕進行下一步,我們需要通過形象友好的GUI模板,來選擇我們第一個Activity的樣式:

然後需要給Activity和Layout起一個名字。

點選Finish按鈕後,Android Studio開始建立並編譯應用。編譯結束後,我們就可以看到Android Studio的IDE介面了。

從圖上可以看出Android Studio已經幫我們將工程組織的很好了。

介面介紹

如上圖所示,我將介面分為5個區域做詳細的講解:

區域1介紹

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML5a24778.PNG

這個區域是執行和除錯相關的操作。

1、編譯2中顯示的模組

2、當前專案的模組列表

3、執行2中顯示的模組

4、除錯2中顯示的模組

5、測試2中顯示的模組程式碼覆蓋率

6、除錯安卓執行的程序

7、重新執行2中顯示的模組

8、停止執行2中顯示的模組

區域2介紹

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML5a94cd5.PNG

這個區域主要是和Android裝置和虛擬機器相關的操作。

1、虛擬裝置管理。

2、同步工程的Gradle檔案,一般在Gradle配置被修改的時候需要同步一下。

3 、專案結構,一些專案相關的屬性配置。

4、Android SDK管理

5、Genymontion模擬器(需要裝Genymontion外掛,安裝篇[模擬器安裝]部分)

區域3介紹

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML5bde3b7.PNG

這個區域主要是工程檔案資源等相關的操作。

1、展示專案中檔案的組織方式,預設是以Android方式展示的,可選擇“Project、Packages、Scratches、ProjectFiles、Problems…”等展示方式。平時用的最多的就AndroidProject兩種。

2、定位當前開啟檔案在工程目錄中的位置。

3、關閉工程目錄中所有的展開項。

4、額外的一些系統配置,點開後是一個彈出選單:

Autoscroll to Source 和 Autoscroll from Source兩個勾選起來後,Android Studio會自動定位當前編輯檔案在工程中的位置,用起來會很爽。其他功能大家可以自己摸索摸索。

區域4介紹

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML5cee482.PNG

這個區域主要是用來編寫程式碼和設計佈局。

1、已開啟的檔案的Tab頁。(在Tab頁上按下Ctrl鍵 + 點選滑鼠會出現一個彈出選單會有驚喜哦!)

2、UI佈局預覽區域。

3、佈局編輯模式切換,對於一些老鳥來說更喜歡通過Text來編輯佈局,新手可以試試Design編輯佈局,編輯後再切換到Text模式,對於學習Android佈局設計很有幫助。

區域5介紹

這個區域大部分是用來檢視一些輸出資訊的。

1、終端 - 喜歡命令列操作的夥伴不用額外啟動終端了。

2、監控 - 可以檢視應用的一些輸出資訊。

3、資訊 - 工程編譯的一些輸出資訊。

4、執行 - 應用執行後的一些相關資訊。

5、TODO - 標有TOTO註釋的列表。

6、事件 - 一些事件日誌。

7、Gradle控制檯,通過這個可以瞭解Gradle構建應用的時候一些輸出資訊。

Android Studio目錄結構

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML6038007.PNG

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位置等屬性)

應用開發除錯

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML60a7a4d.PNG

如上圖1所示在需要除錯的行號處點選設定斷點,然後點選2所示的Debug按鈕(或直接按下Shift+F9快捷鍵)開始除錯。

如上圖所示Android Studio下方出現了除錯檢視。

1、當前程式停留的程式碼行

2、除錯相關的一些按鈕

3、程式呼叫棧區,該區域顯示了程式執行到斷點處所呼叫過的所有方法,越下面的越早被呼叫。

4、區域性變數觀察區

5、使用者自定義變數觀察區

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML6cc60f7.PNG

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(F9) - 一直執行程式直到碰到下一個斷點。

8、View Backpoints(Ctrl + Shift +F8) - 檢視你設定過的所有斷點並可以設定斷點的一些屬性

9、Mute Backpoints - 選中後所有的斷點別設定成無效狀態。再次點選可以重新設定所有斷點有效。

在點選了View Backpoints按鈕後,會出現一個斷點屬性視窗,可以對斷點進行一些更高階的設定。

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML6dbfefa.PNG

1、列出了所有程式中設定的斷點

2、可以輸入條件,在條件成立後斷點才起作用(例如:在輸入框中輸入 i == 8),這種帶條件斷點在實際開發過程中非常有用。也可以通過右鍵點選斷點來設定條件斷點,如下圖:
說明: C:\Users\wqm\work\open-open\document\Android Studio2.0 教程從入門到精通Windows版\image\2016-07-09_16-15-35.gif

好了,到這裡除錯相關的功能都介紹完了。

應用打包簽名

基礎

一個 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

// 這表示該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'
}

打包簽名

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

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML3715a3.PNG

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

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML39f279.PNG

在沒有Key的情況下,我們可以先點選Create new...按鈕來建立一個Key,建立過程很簡單,如下圖:

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML4335d0.PNG

如果你已經存在Key了,那就點選Choose existing...按鈕指定.jks檔案位置,如下圖:

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML448c19.PNG

輸入Key store passwordKey password(在建立Key的時候輸入的那兩個密碼),點選Next按鈕:

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML4627eb.PNG

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

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML48b922.PNG

點選Show in Explorer,可以找到我們簽名好的APK檔案:

說明: C:\Users\wqm\AppData\Local\Temp\SNAGHTML4a9d0a.PNG

=============================================================================

快捷鍵大全

=============================================================================

常用快捷鍵

Ctrl + P 方法呼叫的引數說明 | Parameter info (within method call arguments)
Ctrl + Q 快速查詢文件 | Quick documentation lookup
Ctrl + mouse over code 顯示程式碼的簡明資訊 | Brief Info
Ctrl + Alt + T 用(if..else, try..catch, for,synchronized, etc)包圍程式碼 | Surround with… (if..else, try..catch, for,synchronized, etc.)
Ctrl + / 註釋/取消註釋行  |  Comment/uncomment with line comment
Ctrl + Shift + / 註釋/取消註釋程式碼塊| Comment/uncomment with block comment
Ctrl + Alt + L 對程式碼格式化 | Reformat code
Ctrl + Alt + I 自動縮排行 | Auto-indent line(s)
Shift + Enter 另起一行(和enter不同,不管游標在一行的什麼位置。) | Start new line
Ctrl + Shift + U 切換選擇的程式碼塊的大小寫 | Toggle case for word at caret or selected block
Ctrl + NumPad+/- 展開/摺疊程式碼塊 | Expand/collapse code block
Ctrl + F 在檔案裡搜尋|Find
Ctrl + R 在檔案裡替換 | Replace
Shift + F10 執行專案 | Run
Shift + F9 除錯專案 | Debug
F8 單步執行 | Step over
F7 跳入方法執行 | Step into
Shift + F8 單步跳出|Step out
Alt + F9 執行到斷點 | Run to cursor
Alt + F8 顯示錶達式的值| Evaluate expression
Ctrl + Shift + F8 檢視斷點 | View breakpoints
Ctrl + Shift + N 定位到檔案 | Go to file
Ctrl + G 跳轉到行 | Go to line
Ctrl + E 最近開啟的檔案|Recent files popup
Ctrl + B , Ctrl + Click 轉到宣告 | Go to declaration
F2 / Shift + F2 高亮顯示下一個/前一個錯誤 | Next/previous highlighted error
Alt + Shift + F 新增到收藏 | Add to Favorites
Ctrl + Alt + S 開啟設定對話方塊 | Open Settings dialog

全部快捷鍵

IntelliJ IDEA Default Keymap (android studio預設的快捷鍵)

Editing 編輯

Ctrl + Space基本程式碼完善(任何類,方法,變數),也就是智慧提示 | Basic code completion (the name of any class, method or variable)
Ctrl + Shift + Space 智慧程式碼補全(過濾器的方法和變數的預期型別列表) | Smart code completion (filters the list of methods and variables by expected type)
Ctrl + Shift + Enter 補全當前語句 | Complete statement (直接按enter健一樣的效果)
Ctrl + P 方法呼叫的引數說明 | Parameter info (within method call arguments)
Ctrl + Q 快速查詢文件 | Quick documentation lookup
Shift + F1 外部文件 | External Doc
Ctrl + F1 在插入符號顯示的描述錯誤或警告 | Show descriptions of error or warning at caret
Ctrl + mouse over code 顯示程式碼的簡明資訊 | Brief Info
Alt + Insert 生成程式碼(Getters, Setters, Constructors,hashCode/equals, toString) | Generate code… (Getters, Setters, Constructors,hashCode/equals, toString)
Ctrl + O 過載方法 | Override methods
Ctrl + I 實現了該方法的方法 | Implement methods
Ctrl + Alt + T 用(if..else, try..catch, for,synchronized, etc)包圍程式碼 | Surround with… (if..else, try..catch, for,synchronized, etc.)
Ctrl + / 註釋/取消註釋行  |  Comment/uncomment with line comment
Ctrl + Shift + / 註釋/取消註釋程式碼塊| Comment/uncomment with block comment
Ctrl + W 選擇相關聯的程式碼塊 | Select successively increasing code blocks
Ctrl + Shift + W 取消選擇相關聯的程式碼塊| Decrease current selection to previous state
Alt + Q 上下文資訊 | Context info
Alt + Enter 意圖操作 | Show intention actions and quick-fixes
Ctrl + Alt + L 對程式碼格式化 | Reformat code
Ctrl + Alt + O 調整匯入為最佳 | Optimize imports
Ctrl + Alt + I 自動縮排行 | Auto-indent line(s)
Tab / Shift + Tab 縮排/不縮排選擇的行 | Indent/unindent selected lines
Ctrl + X , Shift + Delete 剪下選擇的塊 |Cut current line or selected block to clipboard
Ctrl + C , Ctrl + Insert 複製選擇的塊|Copy current line or selected block to clipboard
Ctrl + V , Shift + Insert 貼上 | Paste from clipboard
Ctrl + Shift + V 從最近的快取的貼上板選擇貼上 | Paste from recent buffers…
Ctrl + D 複製當前行或者所選塊並貼上 | Duplicate current line or selected block
Ctrl + Y 刪除游標所在位置行 | Delete line at caret
Ctrl + Shift + J 智慧線連線 | Smart line join
Ctrl + Enter 智慧線分裂 | Smart line split
Shift + Enter 另起一行(和enter不同,不管游標在一行的什麼位置。) | Start new line
Ctrl + Shift + U 切換選擇的程式碼塊的大小寫 | Toggle case for word at caret or selected block
Ctrl + Shift + ]/[ 選擇到程式碼塊結束/開始 | Select till code block end/start
Ctrl + Delete 刪除單詞結束 | Delete to word end
Ctrl + Backspace 刪除單詞開始 | Delete to word start
Ctrl + NumPad+/- 展開/摺疊程式碼塊 | Expand/collapse code block

查詢和替換 Search/Replace

Double Shift 在專案裡搜尋 | Search everywhere
Ctrl + F 在檔案裡搜尋|Find
F3 在檔案裡搜尋|Find next
Shift + F3 搜尋前一個|Find previous
Ctrl + R 在檔案裡替換 | Replace
Ctrl + Shift + F 找到所屬的路徑|Find in path
Ctrl + Shift + R 在所屬的路徑替換| Replace in path
Ctrl + Shift + S 搜尋所屬的結構 | Search structurally (Ultimate Edition only)
Ctrl + Shift + M 替換所屬的結構 | Replace structurally (Ultimate Edition only)

搜尋相關快捷鍵 Usage Search

Alt + F7 / Ctrl + F7 查詢用法/查詢定義方法的檔案 | Find usages / Find usages in file
Ctrl + Shift + F7 高亮顯示 | Highlight usages in file
Ctrl + Alt + F7 顯示用法 | Show usages

編譯和執行 Compile and Run

Ctrl + F9 建立專案(編譯修改的和下載依賴) | Make project (compile modifed and dependent)
Ctrl + Shift + F9 編譯修選中的文件,目錄或模組 | Compile selected file, package or module
Alt + Shift + F10 選擇配置並執行|Select configuration and run
Alt + Shift + F9 選擇配置並除錯 | Select configuration and debug
Shift + F10 執行專案 | Run
Shift + F9 除錯專案 | Debug
Ctrl + Shift + F10 根據配置執行專案 | Run context configuration from editor

除錯 Debugging

F8 單步執行 | Step over
F7 跳入方法執行 | Step into
Shift + F7 智慧單步執行 | Smart step into
Shift + F8 單步跳出|Step out
Alt + F9 執行到斷點 | Run to cursor
Alt + F8 顯示錶達式的值| Evaluate expression
F9 重新開始程式 | Resume program
Ctrl + F8 切換斷點 | Toggle breakpoint
Ctrl + Shift + F8 檢視斷點 | View breakpoints

導航 | Navigation

Ctrl + N 定位到類 | Go to class
Ctrl + Shift + N 定位到檔案 | Go to file
Ctrl + Alt + Shift + N 定位到靜態變數 | Go to symbol
Alt + Right/Left 切換到左/右視窗 Go to next/previous editor tab
F12 回到以前的工具視窗 | Go back to previous tool window
Esc 從工具視窗回到編輯器 | Go to editor (from tool window)
Shift + Esc 隱藏當前或最新的工具視窗 | Hide active or last active window
Ctrl + Shift + F4 關閉選項卡 | Close active run/messages/find/… tab
Ctrl + G 跳轉到行 | Go to line
Ctrl + E 最近開啟的檔案|Recent files popup
Ctrl + Alt + Left/Right 後退/前進導航 | Navigate back/forward
Ctrl + Shift + Backspace 向最近編輯導航 | Navigate to last edit location
Alt + F1 在任何檢視選擇當前檔案或靜態變數 Select current file or symbol in any view
Ctrl + B , Ctrl + Click 轉到宣告 | Go to declaration
Ctrl + Alt + B 轉到實現類的檔案去 | Go to implementation(s)
Ctrl + Shift + I 開啟定義的檔案 | Open quick definition lookup
Ctrl + Shift + B 跳轉到型別定義處 | Go to type declaration
Ctrl + U 轉到父類方法或超類 | Go to super-method/super-class
Alt + Up/Down 到之前或者下一個方法 | Go to previous/next method
Ctrl + ]/[ 移動游標到一塊程式碼的開始/結尾位置 | Move to code block end/start
Ctrl + F12 彈出檔案結構 | File structure popup
Ctrl + H 類的層次 | Type hierarchy
Ctrl + Shift + H 方法的層次 | Method hierarchy
Ctrl + Alt + H 呼叫層次 | Call hierarchy
F2 / Shift + F2 高亮顯示下一個/前一個錯誤 | Next/previous highlighted error
F4 / Ctrl + Enter 檢視定義的地方 | Edit source / View source (感覺ctrl + enter沒用)
Alt + Home 游標定位到導航欄 | Show navigation bar
F11 切換(關閉/開啟)書籤 | Toggle bookmark
Ctrl + F11 切換記憶書籤 | Toggle bookmark with mnemonic
Ctrl + #[0-9] 定位到數字書籤 | Go to numbered bookmark
Shift + F11 顯示書籤 | Show bookmarks

程式碼重構 Refactoring

F5 複製檔案 | Copy
F6 移動檔案|Move
Alt + Delete 安全刪除檔案 | Safe Delete
Shift + F6 重新命名 | Rename
Ctrl + F6 更改檔案簽名 | Change Signature
Ctrl + Alt + N 內聯| Inline
Ctrl + Alt + N 提取方法 | Extract Method
Ctrl + Alt + V 提取變數 | Extract Variable
Ctrl + Alt + F 提取欄位 | Extract Field
Ctrl + Alt + C 提取常亮 | Extract Constant
Ctrl + Alt + P 提取引數 | Extract Parameter

VCS 和本地版本歷史 VCS/Local History

Ctrl + K 提交專案到VCS | Commit project to VCS
Ctrl + T 從VCS更新專案 | Update project from VCS
Alt + Shift + C 檢視最近的改變 | View recent changes
Alt + BackQuote (`) 彈出VCS快捷選單 | ‘VCS’ quick popup

動態模板 | Live Templates
就是一些android studio自帶的程式碼模板,以供快速呼叫。
Ctrl + Alt + J 將選中的部分放在動態程式碼內部 | Surround with Live Template
Ctrl + J 插入動態程式碼 | Insert Live Template
iter Iteration according to Java SDK 1.5 style
inst Check object type with instanceof and downcast it
itco Iterate elements of java.util.Collection
itit Iterate elements of java.util.Iterator
itli Iterate elements of java.util.List
psf public static final
thr throw new

快捷鍵 | General

Alt + #[0-9] 開啟相應的工具視窗 | Open corresponding tool window
Ctrl + S 儲存 | Save all
Ctrl + Alt + Y 同步 | Synchronize
Ctrl + Shift + F12 切換最大化編輯器 | Toggle maximizing editor
Alt + Shift + F 新增到收藏 | Add to Favorites
Alt + Shift + I 檢查當前檔案和當前概要檔案 | Inspect current file with current profile
Ctrl + BackQuote (`) 快速切換當前設定 | Quick switch current scheme
Ctrl + Alt + S 開啟設定對話方塊 | Open Settings dialog
Ctrl + Alt + Shift + S 開啟專案結構對話方塊 | Open Project Structure dialog
Ctrl + Shift + A 查詢動作 | Find Action
Ctrl + Tab 選項卡和工具視窗切換。Switch between tabs and tool window