Android Studio與Gradle的深入解讀
大小:0.4 MB 人氣: 2017-10-13 需要積分:1
標(biāo)簽:android studio(1106)gradle(613)
關(guān)于學(xué)習(xí)方式曾經(jīng)跟朋友討論過我們所接受過的大學(xué)工科教育,都是一上來先學(xué)基礎(chǔ)理論,最后再來一個金工實習(xí)。一開始不知道為什么而學(xué),學(xué)不進去,荒廢了基礎(chǔ),等到金工實習(xí)的時候,又發(fā)現(xiàn)基礎(chǔ)不牢,后悔不已。 考慮到傳統(tǒng)教育方式的不足之處,筆者在組織本系列文章的時候是先講入門實例,進而學(xué)習(xí) Gradle 和 Groovy 基礎(chǔ)原理,最后學(xué)習(xí)進階實例。
上篇文章介紹了 從 ADT 遷移到 Android Studio,相信經(jīng)過很短時間的使用之后,已經(jīng)開始熟悉和愛上 Android Studio 了?;A(chǔ)的功能我就不講了,下面列舉一些較為深入又比較實用的功能。
Android Studio 相關(guān)功能介紹
文件夾組織視圖
最常用的有 Project 和 Android 視圖,前者按照項目文件樹進行組織,后者是以 Gradle 構(gòu)建文件作為核心進行組織:
Gradle 相關(guān)文件結(jié)構(gòu)
讓我們來觀察一下Android Studio 中 Gradle 相關(guān)的結(jié)構(gòu):
。 ├── gradle │ └── wrapper //所使用的 Gradle 包裝器配置 ├── .gradle //所使用 Gradle 版本 │ └── 2.8 ├── AsInDepth.iml ├── app //app module │ ├── app.iml │ ├── build │ ├── build.gradle //app module 的 build.gradle │ ├── libs │ ├── proguard-rules.pro │ └── src ├── build.gradle //項目 build.gradle,通常配置項目全局配置,如 repositories 和 dependencies ├── gradle.properties //項目屬性文件,通??梢苑胖靡恍┏A?├── gradlew //Gradle 包裝器可執(zhí)行文件 ├── gradlew.bat //Gradle 包裝器可執(zhí)行文件(Windows) ├── lib //lib module │ ├── build │ ├── build.gradle //lib module 的 build.gradle │ ├── lib.iml │ ├── libs │ ├── proguard-rules.pro │ └── src ├── local.properties //項目的本地屬性,通常是 sdk 所在位置 └── settings.gradle //項目總體設(shè)置,通常是配置項目中所有的 module
Invalidate Cache
Android Studio 會出現(xiàn)索引的問題,那可以從刪除 cache 重建索引,F(xiàn)ile-》Invalidate Caches/Restart
Multiple Language Editor
多語言文字可以通過右擊文件 Open Translation Editor,可以同時進行編輯,但是我發(fā)現(xiàn)如果把 strings.xml 改了別的名字,這個功能就不 work 了。
Gradle 相關(guān)功能介紹
Gradle View
點擊紅色三角運行按鈕,其實是執(zhí)行了 Gradle 的 一些列任務(wù),如果你想分別執(zhí)行一些任務(wù),則可以從 Gradle View 里面查看:
命令行
工作區(qū)下方,有一個叫做 Terminal 的 tab,點擊之后,會自動 cd 到當(dāng)前 project 根目錄下,可以輸入如下命令來嘗試下:
。/gradlew build
Windows 下應(yīng)該是 gradlew.bat build,下面均以 Mac 為例,不再贅述可使用 help 參數(shù)來查看有哪些選項:
。/gradlew --help
下面介紹一些重要的選項:
查看運行 log
有些時候,一個任務(wù)運行失敗,只給出一個錯誤,沒有給具體原因,你就需要查看更多信息,可以使用參數(shù) --info 或者 --stacktrace:
。/gradlew build --info
指定 module 或者 build.gradle
Gradle 默認(rèn)是當(dāng)前目錄下尋找 build.gradle 文件執(zhí)行任務(wù),這樣執(zhí)行 build 會使得整個 project 所有的 module 的 build 任務(wù)都會運行,浪費不必要的時間,可以指定 module (-p) 或者 build.gradle (-b)文件以縮小作用范圍:
。/gradlew -p app build
Sync
正常情況下,修改了 build.gradle 文件,文件上方就會有一個 sync 的按鈕,點擊之后會重新構(gòu)建整個 build.gradle。但是某些特殊情況,這個同步可能會失敗。那就需要一個額外的觸發(fā)。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%