Android Studio 安裝與使用

1 Android Studio 初識(shí)

Android Studio 是一個(gè)Android開(kāi)發(fā)環(huán)境幔托,基于IntelliJ IDEA. 類似 Eclipse ADT,Android Studio 提供了集成的 Android 開(kāi)發(fā)工具用于開(kāi)發(fā)和調(diào)試。

在IDEA的基礎(chǔ)上,Android Studio 提供? :

--基于Gradle的構(gòu)建支持

--Android 專屬的重構(gòu)和快速修復(fù)

--提示工具以捕獲性能、可用性冬阳、版本兼容性等問(wèn)題

--支持ProGuard 和應(yīng)用簽名

--基于模板的向?qū)?lái)生成常用的 Android 應(yīng)用設(shè)計(jì)和組件

--功能強(qiáng)大的布局編輯器,可以讓你拖拉 UI 控件并進(jìn)行效果預(yù)覽

--用以捕捉性能党饮,可用性肝陪,版本兼容性和其他問(wèn)題的工具

1.1 Android Studio 簡(jiǎn)介

http://www.jikexueyuan.com/course/2531_1.html?ss=1

1.2 Android Studio 下載和安裝

http://www.jikexueyuan.com/course/2531_2.html?ss=1

如果只想使用Android SDK提供的工具,不需要Android的開(kāi)發(fā)環(huán)境刑顺,下載Android SDK 就足夠了氯窍。Android Studio 和 Android SDK 下載地址:

https://developer.android.com/studio/index.html

1.3 SDK tools

Android SDK tools - 軟件及開(kāi)發(fā)工具包(software development kit),集成在Android Studio中蹲堂,被軟件開(kāi)發(fā)工程師用于為特定的軟件包狼讨、軟件框架、硬件平臺(tái)柒竞、操作系統(tǒng)等建立應(yīng)用軟件的開(kāi)發(fā)工具的集合政供,是Android專屬的軟件開(kāi)發(fā)和測(cè)試工具包。

常用工具有:

sdk

|——build-tools

| ? ? ? ? ? |——xx.x.x

| ? ? ? ? ? ? ? ? ? ? ?|——aapt

|——platform-tools

| ? ? ? ? ? |——adb

|——platforms

| ? ? ? ? ? |——uiautomator.jar

|——tools

| ? ? ? ? ? |——ddms

| ? ? ? ? ? |——monitor

| ? ? ? ? ? |——monkeyrunner

| ? ? ? ? ? |——traceview

| ? ? ? ? ? |——uiautomatorviewer

| ? ? ? ? ? |——hierarchyviewer


2 環(huán)境變量配置

打開(kāi)計(jì)算機(jī)屬性——高級(jí)系統(tǒng)設(shè)置——環(huán)境變量

2.1 JDK環(huán)境變量配置

2.1.1 新建一個(gè)環(huán)境變量朽基,變量名:JAVA_HOME布隔,變量值: ?C:\Program Files\Java\jdk1.8.0_91 (JDK安裝目錄)

2.1.2?在用戶變量PATH后面加上變量值 ?;%JAVA_HOME%\bin 保存

2.2 SDK環(huán)境變量配置

2.2.1 新建一個(gè)環(huán)境變量,變量名:ANDROID_HOME踩晶,變量值:D:\adt-bundle-windows-x86_64-20140702\sdk(以你安裝目錄為準(zhǔn)执泰,是SDK的所在目錄)枕磁,點(diǎn)擊確認(rèn)渡蜻。

2.2.2 在用戶變量PATH后面加上變量值 ?;%SDK_HOME%\tools;%SDK_HOME%\platform-tools; ?保存

2.2.3 Android SDK配置完成,接下來(lái)驗(yàn)證配置是否成功计济。

點(diǎn)擊運(yùn)行——輸入cmd——回車——輸入adb——回車


3 常用測(cè)試工具介紹

3.1 aapt

aapt即Android Asset Packaging Tool茸苇,在SDK的build-tools目錄下。該工具可以查看沦寂,創(chuàng)建学密, 更新ZIP格式的文檔附件(zip, jar, apk)

3.1.1?列出壓縮文件目錄

aapt l[ist] [-v] [-a] file.{zip,jar,apk}

3.1.2?查看apk包的packageName、versionCode传藏、applicationLabel腻暮、launcherActivity彤守、permission等各種詳細(xì)信息

aapt dump badging ?file_path.apk?

3.1.3?查看權(quán)限

aapt dump permissions file_path.apk

3.1.4?查看資源列表

aapt dump resources file_path.apk

3.1.5?查看apk配置信息

aapt dump configurations file_path.apk

3.1.6?查看指定apk的指定xml文件

aapt dump xmltree file_path.apk? res/***.xml

3.2 adb

3.2.1 查看設(shè)備連接

adb devices

3.2.2 查看log信息

adb logcat [option] [filter-specs]

3.2.3 安裝和卸載APP

安裝: adb install? apk所在路徑

卸載: adb uninstall ?app包名 ??

3.2.4 導(dǎo)入和導(dǎo)出文件

adb pull remote local? 把手機(jī)local目錄的文件導(dǎo)出到pc?

adb push local remote ?把pc的文件push到手機(jī)

3.2.5 查看adb其它命令

adb help

3.3?uiautomator

uiautomator 是Android原生UI自動(dòng)化測(cè)試框架,API介紹如下:

http://wear.techbrood.com/tools/testing/testing_ui.html

3.3.1 UiDevice :在測(cè)試中可以通過(guò)UiDevice對(duì)象去對(duì)設(shè)備的控制哭靖,如點(diǎn)亮屏幕具垫、鎖屏、旋轉(zhuǎn)方向试幽、截圖等筝蚕,點(diǎn)擊home鍵、back鍵铺坞、menu鍵等起宽。可以通過(guò)getUiDevice()來(lái)獲取UiDevice對(duì)象济榨。UiDevice=getUiDevice()坯沪,如:getUiDevice.pressHome();點(diǎn)擊home鍵

3.3.2?UiObject : 整個(gè)UI里面的某個(gè)元素或控件⊥榷蹋可以通過(guò)UiObject對(duì)象來(lái)對(duì)控件模擬用戶的操作屏箍。UiObject的構(gòu)造函數(shù)里是傳入一個(gè)UiSelector對(duì)象。所以我們要通過(guò)UiSelector來(lái)查找我們需要的元素或控件 橘忱,如:UiObject? appsButton=new UiObject(new UiSelector().description("apps"))

3.3.3?UiSelector : 可以通過(guò)UiSelector對(duì)象去定位UI元素赴魁。如果發(fā)現(xiàn)多個(gè)滿足條件的控件則會(huì)返回第一個(gè)控件,在使用UiSelector的時(shí)候可以組合使用多個(gè)屬性來(lái)定位具體的控件,還可以使用childSelector()函數(shù)來(lái)嵌套? UiSelector 對(duì)象

3.3.4?UiScrollable:可滾動(dòng)的控件钝诚,如果操作的控件需要滾動(dòng)就可以使用UiScrollable 颖御,如:

UiScrollable? appsList=new UiScrollable(new UiSelector().className("android.view.View"));

appsList.setAsHorizontalList();

3.3.5?UiCollection: 代表所有控件的集合,可以用來(lái)獲取所用控件的個(gè)數(shù)凝颇,獲取子元素對(duì)象

3.4 ddms

DDMS 的全稱是Dalvik Debug Monitor Service潘拱,是 Android 開(kāi)發(fā)環(huán)境中的Dalvik虛擬機(jī)調(diào)試監(jiān)控服務(wù)。

它為我們提供功能如下:

--為測(cè)試設(shè)備截屏

--針對(duì)特定的進(jìn)程查看正在運(yùn)行的線程以及堆信息

--Logcat

--廣播狀態(tài)信息

--模擬電話呼叫

--接收SMS

--虛擬地理坐標(biāo)

3.4.1 啟動(dòng)ddms

--通過(guò)點(diǎn)擊 sdk/tools 目錄下ddms直接啟動(dòng)

--通過(guò)命令行啟動(dòng)拧略,windows cmd或mac terminal中輸入ddms即可啟動(dòng)

3.4.2 截圖和錄屏

截圖:Device-Screen capture 截取當(dāng)前屏幕

錄制屏幕:Device-Screen Record芦岂,設(shè)置對(duì)應(yīng)參數(shù),點(diǎn)擊OK開(kāi)始錄屏垫蛆,點(diǎn)擊Cancel結(jié)束錄屏

3.4.3 log查看和過(guò)濾

--點(diǎn)擊log區(qū)域的+號(hào)禽最,可以添加過(guò)濾器

--可以通過(guò)Log Tag、Log Message袱饭、PID和Application Name來(lái)創(chuàng)建過(guò)濾器

3.4.4 查看進(jìn)程的堆使用情況

可以通過(guò)DDMS查看進(jìn)程的堆內(nèi)存的使用情況川无,特別是通過(guò)某幾步操作后,當(dāng)前應(yīng)用進(jìn)程的堆使用情況虑乖,操作步驟如下:

— 點(diǎn)擊選中想要監(jiān)測(cè)的進(jìn)程懦趋,比如com.qihoo.appstore進(jìn)程

— 點(diǎn)擊選中Devices視圖界面中最上方一排圖標(biāo)中的“Update Heap”圖標(biāo)

— 切換tab到 VM Heap

— 點(diǎn)擊Heap視圖中的“Cause GC”

— 此時(shí)在Heap視圖中就會(huì)看到當(dāng)前選中的進(jìn)程的內(nèi)存使用量的詳細(xì)情況

3.4.5 跟蹤對(duì)象內(nèi)存分配

— 切換 tab 到 Allocation tracker,單擊“Start Tracing”按鈕

— 運(yùn)用被測(cè)APP疹味,操作待測(cè)試的feature仅叫,操作完畢后單擊“Get Allocations”按鈕帜篇,一個(gè)已分配對(duì)象的列表就會(huì)出現(xiàn)第一個(gè)表格中

— 單擊第一個(gè)表格中的任何一項(xiàng),在表格二中就會(huì)出現(xiàn)導(dǎo)致該內(nèi)存分配的棧跟蹤信息诫咱。通過(guò)allocation tracker坠狡,不僅知道分配了哪類對(duì)象,還可以知道在哪個(gè)線程遂跟、哪個(gè)類逃沿、哪個(gè)文件的哪一行。

3.4.6 查看手機(jī)文件

Device - File Explorer幻锁,即可導(dǎo)入或?qū)С鍪謾C(jī)文件

3.5?monitor

android Device Monitor是一個(gè)提供了圖形化界面的可以對(duì)Android應(yīng)用進(jìn)行調(diào)試和分析的獨(dú)立的工具凯亮,它集成了Android SDK下的以下工具:

3.5.1 DDMS 介紹見(jiàn)3.4

3.5.2 Tracer for OpenGL ES

Tracer是在你的Andr??oid應(yīng)用程序分析OpenGL的嵌入式系統(tǒng)(ES)代碼的工具。該工具允許您捕獲的OpenGL ES命令和每幀圖像哄尔,以幫助您了解圖形命令是如何被執(zhí)行假消。分析繪制過(guò)程參考:http://blog.csdn.net/jinzhuojun/article/details/8901835

3.5.3 Hierarchy Viewer

不合理的布局會(huì)使我們的應(yīng)用程序UI性能變慢,HierarchyViewer能夠可視化的角度直觀地獲得UI布局設(shè)計(jì)結(jié)構(gòu)和各種屬性的信息岭接,幫助我們優(yōu)化布局設(shè)計(jì)富拗。HierarchyViewer是我們優(yōu)化程序的工具之一,它是Android自帶的非常有用的工具鸣戴,可以幫助我們更好地檢視和設(shè)計(jì)用戶界面(UI)啃沪,絕對(duì)是UI檢視的利器。

-- 啟動(dòng)Hierarchy Viewer:點(diǎn)擊Android SDK/tools/hierarchyviewer啟動(dòng)窄锅,或命令行輸入hierarchyviewer啟動(dòng)

-- 連接測(cè)試設(shè)備创千,啟動(dòng)被測(cè)應(yīng)用,并定位到要分析的界面

-- Hierarchy Viewer工具入偷,找到要分析Activity

-- 點(diǎn)擊Load View?Hierarchy追驴,就可以看到當(dāng)前Activity的層級(jí)結(jié)構(gòu)了

-- 點(diǎn)擊要測(cè)試的空間,可以查看控件的屬性疏之,如id殿雪、text等

3.5.4 Systrace

Systrace允許你監(jiān)視和跟蹤Android系統(tǒng)的行為》孀Γ可以用來(lái)跟蹤 graphics 丙曙、view 和 window 的信息,發(fā)現(xiàn)一些深層次的問(wèn)題几缭。

官網(wǎng)介紹:https://developer.android.com/studio/profile/systrace.html#overview

3.5.5Traceview

TraceView 是 Android 平臺(tái)配備一個(gè)很好的性能分析的工具河泳。它可以通過(guò)圖形化的方式讓我們了解我們要跟蹤的程序的性能沃呢,并且能具體到方法年栓。

官方文檔:https://developer.android.com/studio/profile/traceview.html

3.6?monkeyrunner

monkeyrunner工具提供了一個(gè)API,使用此API寫(xiě)出的程序可以在Android代碼之外控制Android設(shè)備和模擬器薄霜。通過(guò)monkeyrunner某抓,您可以寫(xiě)出一個(gè)Python程序去安裝一個(gè)Android應(yīng)用程序或測(cè)試包纸兔,運(yùn)行它,向它發(fā)送模擬擊鍵否副,截取它的用戶界面圖片汉矿,并將截圖存儲(chǔ)于工作站上。monkeyrunner工具的主要設(shè)計(jì)目的是用于測(cè)試功能/框架水平上的應(yīng)用程序和設(shè)備备禀,或用于運(yùn)行單元測(cè)試套件洲拇,但您當(dāng)然也可以將其用于其它目的。

官方文檔:https://developer.android.com/studio/test/monkeyrunner/index.html

3.7 Traceview

見(jiàn)3.5.5

3.8 uiautomatorviewer

可以通過(guò)uiautomatorviewer工具來(lái)獲取應(yīng)用的界面截圖并分析曲尸。uiautomatorviewer工具提供了一個(gè)便利的方式來(lái)查看UI布局結(jié)構(gòu)赋续,并且可以查看各個(gè)控件的相關(guān)屬性。利用這些信息可以用來(lái)創(chuàng)建UI測(cè)試代碼另患。

--手機(jī)連接PC纽乱,打開(kāi)被測(cè)APP,定位到待測(cè)試的界面

--工具欄選擇 Device Screenshot (uiautomator dump)昆箕,左側(cè)區(qū)域顯示手機(jī)當(dāng)前屏幕鸦列,右側(cè)顯示當(dāng)前屏幕界面對(duì)應(yīng)的布局

--在左側(cè)試圖區(qū)域選擇控件,即可在右側(cè)的布局區(qū)域查看該控件的層級(jí)和屬性

--通過(guò)查看activity內(nèi)各控件的屬性鹏倘,配合uiautomator框架薯嗤,即可實(shí)施Android UI自動(dòng)化測(cè)試

3.9 hierarchyviewer

見(jiàn)3.5.3



參考資料:

http://developer.android.com/tools/studio/index.html

http://developer.android.com/tools/debugging/ddms.html

http://developer.android.com/sdk/installing/index.html

http://www.reibang.com/p/5908def0e8af

http://developer.android.com/intl/zh-cn/tools/studio/index.html

http://baike.baidu.com/link?url=c---85A_3-jPh9BVEY_drfkY6M2amlOePyFYegJjc1E6BXMMd14xHKbubRKM3uzmH4S4_LI75NXRxl9k1lfekK

http://baike.baidu.com/link?url=2jMARS-wxMYSMFPnei4ja1LvnL29ykJgEOe-u-E9nwlID6zrFSld4tK3E_lkVHtI6HONJ9w9UdRt25Zf-ueP0q

http://developer.android.com/intl/zh-cn/tools/debugging/ddms.html

http://baike.baidu.com/link?url=NIfuNDZGeLAQkETC70S6E1SZqpTBa2455qUScWseFiZJVOJaOHtj9zHzaFQx22LkbHUgDQRIQPpHJcP0wPszS_

http://www.360doc.com/content/14/0329/23/10366845_364806505.shtml

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市纤泵,隨后出現(xiàn)的幾起案子应民,更是在濱河造成了極大的恐慌,老刑警劉巖夕吻,帶你破解...
    沈念sama閱讀 217,277評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诲锹,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡涉馅,警方通過(guò)查閱死者的電腦和手機(jī)归园,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)稚矿,“玉大人庸诱,你說(shuō)我怎么就攤上這事∥畲В” “怎么了桥爽?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,624評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)昧识。 經(jīng)常有香客問(wèn)我钠四,道長(zhǎng),這世上最難降的妖魔是什么跪楞? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,356評(píng)論 1 293
  • 正文 為了忘掉前任缀去,我火速辦了婚禮侣灶,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘缕碎。我一直安慰自己褥影,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布咏雌。 她就那樣靜靜地躺著凡怎,像睡著了一般。 火紅的嫁衣襯著肌膚如雪赊抖。 梳的紋絲不亂的頭發(fā)上栅贴,一...
    開(kāi)封第一講書(shū)人閱讀 51,292評(píng)論 1 301
  • 那天,我揣著相機(jī)與錄音熏迹,去河邊找鬼檐薯。 笑死,一個(gè)胖子當(dāng)著我的面吹牛注暗,可吹牛的內(nèi)容都是我干的坛缕。 我是一名探鬼主播,決...
    沈念sama閱讀 40,135評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼捆昏,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼赚楚!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起骗卜,我...
    開(kāi)封第一講書(shū)人閱讀 38,992評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤宠页,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后寇仓,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體举户,經(jīng)...
    沈念sama閱讀 45,429評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評(píng)論 3 334
  • 正文 我和宋清朗相戀三年遍烦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了俭嘁。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,785評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡服猪,死狀恐怖供填,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情罢猪,我是刑警寧澤近她,帶...
    沈念sama閱讀 35,492評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站膳帕,受9級(jí)特大地震影響粘捎,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評(píng)論 3 328
  • 文/蒙蒙 一晌端、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧恬砂,春花似錦咧纠、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,723評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至狱掂,卻和暖如春演痒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背趋惨。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,858評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工鸟顺, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人器虾。 一個(gè)月前我還...
    沈念sama閱讀 47,891評(píng)論 2 370
  • 正文 我出身青樓讯嫂,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親兆沙。 傳聞我的和親對(duì)象是個(gè)殘疾皇子欧芽,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評(píng)論 2 354

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

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,099評(píng)論 25 707
  • 簡(jiǎn)介 Android studio安裝 首先在終端輸入java -version,檢查是否安裝了JDK葛圃,如果沒(méi)有安...
    xiaohan_zhang閱讀 1,055評(píng)論 0 2
  • day01 英語(yǔ)****Generation 一代人千扔;代(約30年),時(shí)代icon 圖標(biāo)Libraries:...
    lengol閱讀 1,979評(píng)論 0 50
  • 最近明顯感覺(jué)到了大果的變化库正。 昨天和楊眾曲楚、琪琪一起玩,大果拿著我買(mǎi)給他的姑娘儼然當(dāng)起了隊(duì)長(zhǎng)褥符,對(duì)著這個(gè)命令道“誰(shuí)給我...
    董大果閱讀 156評(píng)論 0 0
  • 回到了日思夜想的城市洞渤,找了一份新的工作,開(kāi)始了新的生活属瓣,一切都看起來(lái)那么的美好载迄,其實(shí)很多時(shí)候我們都被眼前看到的景象...
    竹風(fēng)追月閱讀 169評(píng)論 0 1