導航:首頁 > 操作系統 > androidgradle教程

androidgradle教程

發布時間:2022-06-11 13:59:27

㈠ 如何配置android gradle2.10

啟動Android Studio,打開Demo應用程序,如圖:

點擊菜單「File」-「Project Structure...」,如圖

在彈出的Project Structure對話框中的左側,選擇Project,如圖:

在對話框的右側可以看到Gradle的版本及Gradle插件的版本,如圖:

5
可以看到,Gradle的版本是2.2.1,Gradle插件的版本是1.3.0.

㈡ 如何安裝android gradle2.10

去官網
http://www.gradle.org/downloads
http://services.gradle.org/distributions
下載匹配的 Gradle 版本
把zip直接放到C:\Users\xxx\.gradle\wrapper\dists\gradle-2.10-all\xxxxxxxxxxxxxxx,
把剛剛下載好的gradle-2.10-all.zip復制進去
千萬不要解壓,不要解壓,不要解壓
重啟as

㈢ android studio 怎麼新建gradle文件

AS創建Gradle,3步:

  1. 切換至project目錄,app目錄上new ->File

  2. 輸入gardle名稱,需注意以".gardle"結尾

  3. 創建完成,注意觀察,新建的gradle文件是否與build.gradle(mole)為同級別,無誤則創建成功!


㈣ android gradle 怎麼用

Groovy 的基本語法
方法調用
apply plugin: 'com.android.application'

以上語句中的apply是一個方法,給它傳遞了一個參數plugin,plugin 的值是'com.android.application'。
如果有多個參數,則以逗號隔開,例如
compile name: 'volley', ext: 'aar'

閉包
Groovy中花括弧包含的部分成為一個閉包(Closure)。例如下面的代碼
compileOptions {
sourceCompatibility javaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}

compileOptions 是一個 Method, 它的參數是一個閉包,這個閉包內依次執行了兩個方法 --sourceCompatibility 和targetCompatibility, 參數都是JavaVersion.VERSION17。
閉包也可以嵌套包含
repositories {
flatDir {
dirs 'libs'
}
}

常見使用方法
包依賴(aar)

使用aar時可以分為兩種情況
① aar位於本地目錄
首先在 android 的參數閉包中添加調用方法 repositories
repositories {
flatDir {
dirs 'libs'
}
}

然後在 dependencies 的參數閉包中添加
compile name: 'volley', ext: 'aar'

② aar位於遠程倉庫
這里以maven為例,當然也可以使用其他類型的倉庫,例如 Ivy。
只需要在jar包引用方式後面添加一個@aar就可以了
compile 'com.alibaba:fastjson:latest.integration@aar'

㈤ android studio的gradle里的東西怎麼用

Gradle是可以用於Android開發的新一代的 Build System, 也是 Android Studio默認的build工具。
Gradle腳本是基於一種JVM語言 -- Groovy,再加上DSL(領域特定語言)組成的。
因為Groovy是JVM語言,所以可以使用大部分的Java語言庫。所謂DSL就是專門針對Android開發的插件,比如標准Gradle之外的一些新的方法(Method)、閉包(Closure)等。
由於Gradle的語法足夠簡潔,而且可以使用大部分的java包,當之無愧地成為新一代 Build System。
使用Android Studio新建一個工程後,默認會生成兩個build.gralde文件,一個位於工程根目錄,一個位於app目錄下。還有另外一個文件 --settings.gradle。
根目錄下的腳本文件是針對mole的全局配置,它的作用閾所包含的所有 mole 是通過settings.gradle來配置。
app文件夾就是一個mole,如果在當前工程中添加了一個新的mole -- lib,就需要在settings.gralde文件中包含這個新的mole。

gradle腳本的基本結構
用我現在的工程舉例來說,根目錄的build.gradle的內容如下所示:
// Top-level build file where you can add configuration options common to all sub-projects/moles.

buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.0.0-rc4'

// NOTE: Do not place your application dependencies here; they belong
// in the indivial mole build.gradle files
}
}

allprojects {
repositories {
jcenter()

maven {
url 'http://mvnrepo.xxx.com/mvn/repository'
}
}
}

classpath 'com.android.tools.build:gradle:1.0.0-rc4'就是Android特有的插件,maven倉庫位於通過方法jCenter() 獲取,這也是默認的maven倉庫。當然也可以添加額外的maven倉庫地址,例如以上文件中的
maven {
url 'http://mvnrepo.xxx.com/mvn/repository'
}

然後是 settings.gradle 文件:
include ':app'

app就是項目包含的一個mole,如果有多個mole,可以在為 include 方法添加多個參數。

最後是app/build.gradle
apply plugin: 'com.android.application'

android {
compileSdkVersion 21
buildToolsVersion "21.1.1"

compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}

defaultConfig {
applicationId "your.application.id"
minSdkVersion 14
targetSdkVersion 21
versionCode 2
versionName "2.0.0"
}

signingConfigs {
release {
storeFile file('release.keystore')
storePassword "yourstorepassword"
keyAlias "yourkeyalias"
keyPassword "yourkeypassword"
}
debug {
storeFile file('debug.keystore')
}
}

buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
debug {
signingConfig signingConfigs.debug
}
}

proctFlavors {
inner {
applicationId "your.application.inner.id"
versionName "2.0.0"
}

market {

}
}
}

repositories {
flatDir {
dirs 'libs'
}
}

dependencies {

// 通用
compile name: 'volley', ext: 'aar'
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3'
compile 'com.alibaba:fastjson:latest.integration'

// 項目相關(已刪除)
}

Groovy 的基本語法
方法調用
apply plugin: 'com.android.application'
以上語句中的apply是一個方法,給它傳遞了一個參數plugin,plugin 的值是'com.android.application'。
如果有多個參數,則以逗號隔開,例如
compile name: 'volley', ext: 'aar'

閉包
Groovy中花括弧包含的部分成為一個閉包(Closure)。例如下面的代碼
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}

compileOptions 是一個 Method, 它的參數是一個閉包,這個閉包內依次執行了兩個方法 -- sourceCompatibility 和targetCompatibility, 參數都是JavaVersion.VERSION17。
閉包也可以嵌套包含
repositories {
flatDir {
dirs 'libs'
}
}

常見使用方法
包依賴(aar)

使用aar時可以分為兩種情況
① aar位於本地目錄
首先在 android 的參數閉包中添加調用方法 repositories
repositories {
flatDir {
dirs 'libs'
}
}
然後在 dependencies 的參數閉包中添加
compile name: 'volley', ext: 'aar'
② aar位於遠程倉庫
這里以maven為例,當然也可以使用其他類型的倉庫,例如 Ivy。
只需要在jar包引用方式後面添加一個@aar就可以了
compile 'com.alibaba:fastjson:latest.integration@aar'

包依賴(jar)
compile group: 'com.alibaba', mole: 'fastjson', version: 'latest.integration'

可以簡寫成
compile 'com.alibaba:fastjson:latest.integration'

latest.integration可以替換成具體的版本號,這里是獲取伺服器上的最新版本。
去掉重復依賴
compile 'com.alibaba.fastjson.latest.integration' {
exclude mole: 'annotations', group: 'com.google.android'
}

使用 Java7
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}

proctFlavors
針對不同的APP分發渠道,我們可以定義不同的 proct flavor。也可以定義內部版本和外部版本,內部版本中包含了一些調試代碼,這些代碼在發布時並不會被編譯進最後的APP中。而且可以分別為內部版本和外部版本指定不同的ApplicationId,這樣在同一個設備上可以同時安裝兩個版本以方便調試。
命令行執行Gradle腳本
在Android工程根目錄下會自動生成一個shell腳本 - gradlew,執行之前記得加上x屬性 - chomod +x gradlew
gradle腳本中包含了很多 task,可以通過task名來指定需要執行的task。
./gradlew build./gradlew assemble./gradlew assembleInnderDebug
總結
不得不說,Gradle實在太好用了!雖然 Gradle 可以與 Ant 或 maven 配合使用,但是其簡潔和功能性遠遠超過其他兩個。我現在開發的項目普遍使用的是 maven,不知道什麼原因,使用Gradle時經常會遇到一些無法獲取遠程依賴包的問題,最簡單的解決辦法就是把依賴包下載的本地。

㈥ android gradle 怎麼用本地包

千鋒扣丁學堂Android開發為您解答:
------------------------------------------------------------
Gradle 2.2.1
------------------------------------------------------------
Build time: 2014-11-24 09:45:35 UTC
Build number: none
Revision:
Groovy: 2.3.6
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013 JVM: 1.7.0_60 (Oracle Corporation 24.60-b09) OS:
Mac OS X 10.9.5 x86_64
2、接著執行 ./gradlew clean
執行這個命令會去下載Gradle的一些依賴,下載成功並編譯通過時會看到如下信息:
:app:clean UP-TO-DATE
:extras:ShimmerAndroid:clean UP-TO-DATE BUILD SUCCESSFUL
3、最後執行 ./gradlew build
這個命令會直接編譯並生成相應的apk文件,如果看到如下字樣就代表build成功了
BUILD SUCCESSFUL

Total time: 31.456 secs
緊接著在 9GAG/app/build/outputs/apk 目錄下會看到類似於app-debug-unaligned.apk, app-release-unsigned.apk等,看名字應該能理解意思,unaligned代表沒有進行zip優化的,unsigned代表沒有簽名的。然後就可以直接安裝apk查看運行效果了。
以上是我個人習慣的一種閱讀第三方源碼的習慣,關於上面提到的一些gradle命令大家應該還不理解,後面會一一進行說明的。
導入Android Studio
但是如果你還是想導入Android Studio的話,下面就來簡單介紹下導入Studio的方法以及一些注意事項。
1、選擇File->Import Project, 選擇本地9GAG項目的目錄

2、第一次依然會下載Gradle,其實自己在命令行已經下載過了,但是這次依然還要下載一次(依然要翻牆),可能是個bug,接下來的版本中可能會修復。

3、導入之後你需要注意以下幾個地方
每個Mole下的 build.gradle 下的buildToolsVersion,即9GAG/app/build.gradle 和 9GAG/extras/ShimmerAndroid/build.gradle , 可以打開 SDK Manager 查看本地你安裝的 SDK Build-tools, 如下圖,如果相應版本沒有安裝請先下載

項目根目錄下的 build.gradle 下gradle插件的版本,如 9GAG/build.gradle 的內容:
classpath 『com.android.tools.build:gradle:1.0.0』

Android Studio 1.0必須指定gradle插件1.0的版本
Gradle Wrapper的版本,在 9GAG/gradle/wrapper/gralde-wrapper.properties 文件里有如下內容:
#Thu Dec 18 16:02:24 CST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
上述內容制定了gradle的版本使用2.2.1,在Studio中如果你手動改了gradle插件的版本會有提示要不要更新Gradle Wrapper的版本。
如果以上幾個地方確定版本是ok的,那麼導入Android Studio應該沒有問題,有些老的項目可能gradle版本比較老,仍然在使用一些老的語法,如果編譯還通不過參考Android Studio系列教程四–Gradle基礎更改成最新的語法。
Gradle常用命令
上面大家接觸了一些命令如 ./gradlew -v ./gradlew clean ./gradlew build, 這里注意是./gradlew, ./代表當前目錄,gradlew代表 gradle wrapper,意思是gradle的一層包裝,大家可以理解為在這個項目本地就封裝了gradle,即gradle wrapper, 在9GAG/gradle/wrapper/gralde-wrapper.properties文件中聲明了它指向的目錄和版本。只要下載成功即可用grdlew wrapper的命令代替全局的gradle命令。
理解了gradle wrapper的概念,下面一些常用命令也就容易理解了。

./gradlew -v 版本號

./gradlew clean 清除9GAG/app目錄下的build文件夾

./gradlew build 檢查依賴並編譯打包

這里注意的是 ./gradlew build 命令把debug、release環境的包都打出來,如果正式發布只需要打Release的包,該怎麼辦呢,下面介紹一個很有用的命令 **assemble**, 如

./gradlew assembleDebug 編譯並打Debug包

./gradlew assembleRelease 編譯並打Release的包

除此之外,assemble還可以和proctFlavors結合使用,具體在下一篇多渠道打包進一步解釋。

./gradlew installRelease Release模式打包並安裝

./gradlew uninstallRelease 卸載Release模式包

下一篇來介紹用Gradle進行方便的多渠道打包,以及項目中完整的Gradle配置。

㈦ android studio怎麼設置gradle版本

選擇進入官網下載Gradle新版,我這里選擇的是Gradle 2.10版本,然後根據網上其它經驗進行安裝;
發現編譯問題進入Android studio之後,由於本地電腦已經安裝了gradle2.10,Android studio項目依舊配置的是老版本gradle2.4;編譯項目的時候,遇到如下圖所示問題;找到項目build.gradle文件
定位到Android studio 裡面的項目,找到項目下面的build.gradle文件,gradle 2.4版本所對應的 com.android.tools.build:gradle插件為1.3.0,gradle 2.10對應的插件版本是2.1.0;在build.gradle文件裡面更改即可;找到文件 gradle-wrapper.properties定位到 項目gradle目錄下gradle-wrapper.properties文件,把"distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip"更改為「distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip」;請按照具體版本號進行更改;在Android studio主界面點擊設置「setting」,進入Android studio的設置界面;進入設置界面,在左側搜索框中輸入gradle,就可以定位到gradle,然後點擊選中選擇本地的Gradle版本;如圖所示;這樣,項目進行編譯運行,編譯成功(ITJOB),Gradle版本號更改完成!

㈧ android studio 怎麼配置gradle

啟動Android Studio,打開Demo應用程序,如圖: 點擊菜單「File」-「Project Structure。」,如圖 在彈出的Project Structure對話框中的左側,選擇Project,如圖: 在對話框的右側可以看到Gradle的版本及Gradle插件的版本,如圖: 5 可以看到,Grad。詳細的可以看看安卓巴士教程:http://www.apkbus.com/thread-463312-1-1.html

㈨ 如何建立與 Android studio和 gradle android 庫

註: 此應答是純 Gradle 應答、 在這中使用 IntelliJ 定期但我不知道怎麼整合是以 Android 的工作室。我知道發生了什麼事對我來說,這我如何使用 Gradle 和 Android 的信徒。

Gradle 已定義的結構 (即您可以更改底部鏈接將告訴您如何),是與 Maven 非常相似,如果您曾經使用過它。
Project Root
+-- src
| +-- main (your project)
| | +-- java (where your java code goes)
| | +-- res (where your res go)
| | +-- assets (where your assets go)
| | \-- AndroidManifest.xml
| \-- instrumentTest (test project)
| \-- java (where your java code goes)
+-- build.gradle
\-- settings.gradle

如果你僅有的一個項目,不是需要的 settings.gradle 文件。但是你想要添加更多的項目,所以我們需要它。
現在讓我們看一看那個 build.gradle 文件。你會需要這個在它 (要添加的 android 工具)
build.gradle
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.3'
}
}

現在我們需要告訴 Gradle 一些 android 系統部件。它是相當簡單的。一個基本的那個 (在大多數我情況下的工作方式) 如下所示。我在此塊中有一個注釋,它將允許我指定的版本名稱和代碼生成 APK 時。
build.gradle
apply plugin: "android"
android {
compileSdkVersion 17
/*
defaultConfig {
versionCode = 1
versionName = "0.0.0"
}
*/
}

東西我們要想要添加,然而,就沒見過的 Gradle 光的人幫助他們使用該項目,而不安裝它的方式。
build.gradle
task wrapper(type: org.gradle.api.tasks.wrapper.Wrapper) {
gradleVersion = '1.4'
}

所以現在我們有一個要生成的項目。現在我們要添加其他人。我把它們放在一個目錄中,或許稱之為指標或子項目。這是無關緊要的但你需要知道你把它放哪。要告訴 Gradle 項目在哪裡你都需要將它們添加到 settings.gradle。
目錄結構:
Project Root
+-- src (see above)
+-- subProjects (where projects are held)
| +-- reallyCoolProject1 (your first included project)
| \-- See project structure for a normal app
| \-- reallyCoolProject2 (your second included project)
| \-- See project structure for a normal app
+-- build.gradle
\-- settings.gradle

settings.gradle:
include ':subProjects:reallyCoolProject1'
include ':subProjects:reallyCoolProject2'

您應該確保的最後一件事是subProjects/reallyCoolProject1/build.gradle apply plugin: "android-library" 而不是 apply plugin: "android" 。
像每個 Gradle 項目 (和 Maven) 我們現在需要告訴關於它的依賴性的根項目。這還可以包含任何你想要的正常 Java 依賴。
build.gradle
dependencies{
compile 'com.fasterxml.jackson.core:jackson-core:2.1.4'
compile 'com.fasterxml.jackson.core:jackson-databind:2.1.4'
compile project(":subProjects:reallyCoolProject1")
compile project(':subProjects:reallyCoolProject2')
}

我知道這看起來像很多步驟,但他們是很容易的一旦你這樣做一次或兩次。這種方式也將允許您可以假設你有沒有安裝了 Android SDK 的 CI 伺服器上生成。
NDK 側註: 如果您要使用 NDK 你需要的東西喜歡下面。可以在這里找到 build.gradle 文件的示例:https://gist.github.com/khernyo/4226923
build.gradle
task NativeLibs(type: Copy) {
from fileTree(dir: 'libs', include: '**/*.so' ) into 'build/native-libs'
}
tasks.withType(Compile) { compileTask -> compileTask.dependsOn NativeLibs }

clean.dependsOn 'cleanCopyNativeLibs'

tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniDir new File('build/native-libs')
}

閱讀全文

與androidgradle教程相關的資料

熱點內容
手機程序加密有什麼作用 瀏覽:178
求黑馬程序員python教程 瀏覽:528
androidmvvm優缺點 瀏覽:894
unix下編譯庫文件 瀏覽:633
程序員的u盤 瀏覽:237
android根據經緯度獲取城市 瀏覽:564
python使用解釋器還是編譯器 瀏覽:358
以下關於有加密演算法及密鑰描述 瀏覽:219
linuxgethostname 瀏覽:416
程序員多數有對象 瀏覽:131
單片機延時程序計算 瀏覽:444
編譯原理語法翻譯 瀏覽:504
pr編譯出錯渲染存在偏移 瀏覽:262
如何製作自家的app 瀏覽:199
推薦一個解壓軟體rar解壓幫手 瀏覽:210
wd文檔加密器 瀏覽:748
伺服器上傳壓縮包一般是什麼格式 瀏覽:333
發送加密文件密碼幾位數 瀏覽:160
樹洞app怎麼樣 瀏覽:175
vivo編譯時間可以改么 瀏覽:150