Android Studio 安裝與使用

1 Android Studio 初識(shí)

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

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

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

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

--提示工具以捕獲性能、可用性、版本兼容性等問題

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

--基于模板的向?qū)砩沙S玫?Android 應(yīng)用設(shè)計(jì)和組件

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

--用以捕捉性能,可用性,版本兼容性和其他問題的工具

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的開發(fā)環(huán)境,下載Android SDK 就足夠了。Android Studio 和 Android SDK 下載地址:

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

1.3 SDK tools

Android SDK tools - 軟件及開發(fā)工具包(software development kit),集成在Android Studio中,被軟件開發(fā)工程師用于為特定的軟件包、軟件框架、硬件平臺(tái)、操作系統(tǒng)等建立應(yīng)用軟件的開發(fā)工具的集合,是Android專屬的軟件開發(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)境變量配置

打開計(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配置完成,接下來驗(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è)試中可以通過UiDevice對(duì)象去對(duì)設(shè)備的控制,如點(diǎn)亮屏幕、鎖屏、旋轉(zhuǎn)方向、截圖等,點(diǎn)擊home鍵、back鍵、menu鍵等??梢酝ㄟ^getUiDevice()來獲取UiDevice對(duì)象。UiDevice=getUiDevice(),如:getUiDevice.pressHome();點(diǎn)擊home鍵

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

3.3.3?UiSelector : 可以通過UiSelector對(duì)象去定位UI元素。如果發(fā)現(xiàn)多個(gè)滿足條件的控件則會(huì)返回第一個(gè)控件,在使用UiSelector的時(shí)候可以組合使用多個(gè)屬性來定位具體的控件,還可以使用childSelector()函數(shù)來嵌套? 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: 代表所有控件的集合,可以用來獲取所用控件的個(gè)數(shù),獲取子元素對(duì)象

3.4 ddms

DDMS 的全稱是Dalvik Debug Monitor Service,是 Android 開發(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

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

--通過命令行啟動(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開始錄屏,點(diǎn)擊Cancel結(jié)束錄屏

3.4.3 log查看和過濾

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

--可以通過Log Tag、Log Message、PID和Application Name來創(chuàng)建過濾器

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

可以通過DDMS查看進(jìn)程的堆內(nèi)存的使用情況,特別是通過某幾步操作后,當(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)存分配的棧跟蹤信息。通過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 介紹見3.4

3.5.2 Tracer for OpenGL ES

Tracer是在你的Andr??oid應(yīng)用程序分析OpenGL的嵌入式系統(tǒng)(ES)代碼的工具。該工具允許您捕獲的OpenGL ES命令和每幀圖像,以幫助您了解圖形命令是如何被執(zhí)行。分析繪制過程參考: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)的行為。可以用來跟蹤 graphics 、view 和 window 的信息,發(fā)現(xiàn)一些深層次的問題。

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

3.5.5Traceview

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

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

3.6?monkeyrunner

monkeyrunner工具提供了一個(gè)API,使用此API寫出的程序可以在Android代碼之外控制Android設(shè)備和模擬器。通過monkeyrunner,您可以寫出一個(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

見3.5.5

3.8 uiautomatorviewer

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

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

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

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

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

3.9 hierarchyviewer

見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.itdecent.cn/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)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

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

友情鏈接更多精彩內(nèi)容