(轉)Android學習筆記②——HelloWorld的創建已經基本知識

来源:http://www.cnblogs.com/eoooxy/archive/2016/10/08/5922978.html
-Advertisement-
Play Games

開發第一應用 可以開發屬於自己的應用,是否有點小激動?好吧!讓我們開始,首先點擊Start a new Android Studio Project創建工程:接下來需要輸入應用名稱(第一個字母要大寫)、公司域以及指定應用存放目錄,點擊Next按鈕進入下一步: 如果第一個字母不是大寫,會提示:The ...


開發第一應用

可以開發屬於自己的應用,是否有點小激動?好吧!讓我們開始,首先點擊Start a new Android Studio Project創建工程:
2016-03-23_17-18-54.png
接下來需要輸入應用名稱(第一個字母要大寫)、公司域以及指定應用存放目錄,點擊Next按鈕進入下一步:
2016-04-15_10-39-57.png

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

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

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

2016-04-15_13-57-21.png
如果不知道怎麼選擇最小版本可以點擊Help me choose看看每個版本的分佈圖表和描述:
2016-04-15_13-55-37.png
繼續點擊Next按鈕進行下一步,由於我們先前沒有裝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開始創建並編譯應用。
2016-04-15_14-01-40.png
編譯結束後,我們就可以看到Android Studio的IDE界面了。
2016-04-15_21-46-59.png
從圖上可以看出Android Studio已經幫我們將工程組織的很好了。

界面介紹

2016-04-16_15-11-16.png
如上圖所示,我將界面分為5個區域做詳細的講解:

區域1介紹

2016-04-16_15-26-58.png
這個區域是運行和調試相關的操作。

1、編譯2中顯示的模塊

2、當前項目的模塊列表

3、運行2中顯示的模塊

4、調試2中顯示的模塊

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

6、調試安卓運行的進程

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

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

區域2介紹

2016-04-16_16-16-08.png
這個區域主要是和Android設備和虛擬機相關的操作。

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

2、虛擬設備管理

3、Android SDK管理

4、Android設備監控

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

區域3介紹

2016-04-16_16-37-07.png
這個區域主要是工程文件資源等相關的操作。

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

2、定位當前打開文件在工程目錄中的位置。

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

4、額外的一些系統配置,點開後是一個彈出菜單:
2016-04-16_17-13-09.png
Autoscroll to Source 和 Autoscroll from Source兩個勾選起來後,Android Studio會自動定位當前編輯文件在工程中的位置,用起來會很爽。其他功能大家可以自己摸索摸索。

區域4介紹

2016-04-16_17-19-19.png
這個區域主要是用來編寫代碼和設計佈局。

1、已打開的文件的Tab頁。(在Tab頁上按下Cmd鍵 + 點擊滑鼠會出現一個彈出菜單會有驚喜哦!)

2、UI佈局預覽區域。

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

區域5介紹

2016-04-23_16-01-27.png
這個區域大部分是用來查看一些輸出信息的。

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

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

3、監控 - 可以查看應用的一些輸出信息。

4、運行 - 應用運行後的一些相關信息。

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

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

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

Android Studio目錄結構

2016-04-23_17-27-07.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位置等屬性)

 

應用開發調試

2016-04-25_22-43-16.png
如上圖1所示在需要調試的行號處點擊設置斷點,然後點擊2所示的Debug按鈕(或直接按下Ctrl+D快捷鍵)開始調試。
2016-04-25_23-08-41.png
如上圖所示Android Studio下方出現了調試視圖。

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

2、調試相關的一些按鈕

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

4、局部變數觀察區

5、用戶自定義變數觀察區

2016-04-26_15-45-50.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(Alt+Cmd+R) - 一直運行程式直到碰到下一個斷點。

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


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

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

2、可以輸入條件,在條件成立後斷點才起作用(例如:在輸入框中輸入 i == 8),這種帶條件斷點在實際開發過程中非常有用。也可以通過右鍵點擊斷點來設置條件斷點,如下圖:

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

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'
    }

     

打包簽名

選擇Build->Generate Signed APK...,如下圖:
2016-04-26_21-51-28.png
在彈窗中一直Next直到下麵這個界面:
2016-04-26_21-54-27.png
在沒有Key的情況下,我們可以先點擊Create new...按鈕來創建一個Key,創建過程很簡單,如下圖:
2016-04-26_21-54-27.png
如果你已經存在Key了,那就點擊Choose existing...按鈕指定.jks文件位置,如下圖:
2016-04-26_22-08-27.png

輸入Key store password和Key password(在創建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

 

 

本文轉自:深度開源(open-open.com)
原文標題:Android Studio2.0 教程從入門到精通MAC版 - 入門篇
原文地址:http://www.open-open.com/lib/view/open1466732896151.html


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 數據交互常見的字元串拼接 博主最近事情有點忙,趁現在有點空閑時間,來總結一下工作中遇到的字元串拼接問題。說到字元串的拼接無外乎一下幾種方式: 1.通過'+'進行拼接 var arr =['今天',昨天','明天']; $( ''+ ''+ ''+arr[0]+''+ ''+arr[1]+''+ '' ...
  • 在APP端上的輪播效果 跟 利用bootstrap的道理是一樣的 我是利用swiper製作的 跟上一篇 一樣 只需將swiper的JS css文件引入到html 再複製想要的某一種效果的代碼即可圖片中地址欄 就是swiper的官網地址 有興趣的可以去看下 有各種的特效 對於還未學習JS的 又想實現各 ...
  • //以下是一個鏈表類 function LinkedList(){ //Node表示要加入列表的項 var Node=function(element){ this.element=element; this.next=null; }; var length=0;//存儲列表項的數量 var hea ...
  • (-1)寫在前面 我用的是chrome49,如果你用的不是。可以嘗試換下瀏覽器首碼。IE在這方面的實現又特例獨行了。不想提及…,這篇是為後續做準備。 (0)快速使用 background-image:-webkit-linear-gradient(red,blue); 或者 background-i ...
  • AOS 是一個用於在頁面滾動的時候呈現元素動畫的工具庫,你可能會覺得它和 WOWJS 一樣,的確他們效果是類似的。但是AOS是 CSS3 動畫驅動的庫,當你滾動頁面的時候能讓元素動起來,當頁面滾回頂部的時候,元素能夠回到前一個狀態,如此達到迴圈動畫的效果。 ...
  • 效果圖如下: ...
  • 效果圖: ...
  • 做App測試時監測使用期間的cpu,記憶體,流量,電量等指標時,發現的企鵝很好用的工具。 備份至此,方便後期查閱 以下內容摘抄自企鵝GT官網 http://code.tencent.com/gt.html http://gt.qq.com/ 文檔 http://gt.qq.com/docs.html ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...