當前位置:首頁 » 安卓系統 » androidgradle33

androidgradle33

發布時間: 2022-08-19 13:41:35

Ⅰ android gradle 方法在哪

從概念上說,程序的編寫過程就是把業務領域中的問題通過代碼或者程序模型表達出來:
計算機的程序模型較為單一(歸根結底都是運算和存儲
在面向對象技術成為主流的今天,通常情況下,計算機程序不太可能做到與業務領域中的概念一致,或者具有某些直覺的對應。因此,軟體的修改和可維護性並沒有想像中的容易。我們必須不斷地將業務領域中的概念轉換成相應的代碼模型,然後再進行修改。這種間接性直接造成了軟體的復雜度。
而DSL的主要目的就是要消除這樣的復雜度(或者說,以構造DSL的復雜度代替這種復雜度),DSL就要是要以貼近業務領域的方式來構造軟體。因此,DSL的簡潔性往往是一種思維上的簡潔性,使我們不用費太多的氣力就能看懂代碼所對應的業務含義。

Ⅱ Android Studio為什麼要用Gradle

鑒於Android Studio使用Gradle構建項目,在IDE的使用過程中可能會遇到很多令人頭疼的問題。大錘也是第一次接觸,為有個基本的認識,特找來Android官方手冊,和大家一起學習學習。翻譯不當之處,望指出。
為什麼要用Gradle?
Gradle是比較先進的構建系統,也是一個很好的構建工具,允許通過插件自定義構建邏輯
以下是為什麼Android Studio選擇Gradle的主要原因:
使用領域專用語言(Domain Specific Language)來描述和處理構建邏輯。(以下簡稱DSL)
基於Groovy。DSL可以混合各種聲明元素,用代碼操控這些DSL元素達到邏輯自定義。
支持已有的Maven或者Ivy倉庫基礎建設
非常靈活,允許使用best practices,並不強制讓你遵照它的原則來。
其它插件時可以暴露自己的DSL和API來讓Gradle構建文件使用。
允許IDE集成,是很好的API工具
需要准備:
Gradle 1.6 or 1.7
SDK with Build Tools 17.0.0 (released 5/16/2013)
Basic Project
在Gradle項目的根目錄下,有個叫build.gradle的文件,它描述了這個項目的整體構建基礎。
build文件
最基本的java程序,它的build.gradle文件就一句話:
apply plugin: 'java'
最基本的Android項目,它的build.gradle如下:
buildscript {
repositories {
mavenCentral()
}

dependencies {
classpath 'com.android.tools.build:gradle:0.5.6'
}
}

apply plugin: 'android'
android {
compileSdkVersion 17
}

我們一步步來分析一下上面三部分的內容。
buildscript{...} 配置了驅動build的代碼,它聲明將在Maven中央倉庫,取一個classpath dependency,也就是Android plugin for Gradle v0.5.6
apply plugin 指明了用到的plugin是android,就像前面java程序中,用的plugin是java一樣
android{...} 中配置了所有android構建的參數,這里也就是Android DSL的入口點。
默認的,只有目標編譯環境是必要的,也就是compileSdkVersion這個屬性。這和以前在project.properties中的target屬性類似。
值得注意的是,如果你在Android項目中寫 apply plugin:java 而不是apply plugin:android的話,將會build失敗。

Ⅲ 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插件版本

查看gradle插件的版本,每一個android 項目中都需要配置的gradle插件的版本的啊。比如:

dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}

這就是版本啊。

查看gradle的版本,如果使用的本地gradle在,android studio的配置中看,如果不是,在項目的gradle/wrapper目錄下面有個gradle-wrapper.properties中有如下內容:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip

Ⅳ android gradle 是什麼文件

gradle是伴隨著Android Studio一起啟用的一個新的Android build系統所用的build工具。 詳情見官方文檔,這個:tools.android/tech-docs/new-build-system/user-guide 還有這個:tools.android/tech-docs/new-build-system...

Ⅵ android studio 怎麼配置gradle

build.gradle

//設置腳本的運行環境
buildscript {
//支持java 依賴庫管理(maven/ivy),用於項目的依賴。
repositories {
mavenCentral()
}
//依賴包的定義。支持maven/ivy,遠程,本地庫,也支持單文件
dependencies {
classpath 'com.android.tools.build:gradle:0.4'
}
}
//聲明構建的項目類型,這里當然是android了
apply plugin: 'android'
//設置編譯android項目的參數
android {
compileSdkVersion 17
buildToolsVersion "17"

defaultConfig {
minSdkVersion 8
targetSdkVersion 17
}
//Android默認配置
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
//測試所在的路徑,這里假設是tests文件夾,沒有可以不寫這一行
instrumentTest.setRoot('tests')
}

//這個是解決lint報錯的代碼
lintOptions {
abortOnError false
}
/**
* 簽名設置
*/
signingConfigs {
myConfigs {
storeFile file("簽名文件地址")
keyAlias "..."
keyPassword "..."
storePassword "..."
}
}
/**
* 混淆設置
*/
buildTypes {
release {
signingConfig signingConfigs.myConfigs
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
/**
* 渠道打包(不同包名)
*/
proctFlavors {
qqqq {
applicationId = '包名'
}
hhhhh {
applicationId='包名'
}
}
}
/**
* .so文件的導入
*/
task NativeLibs(type: Copy) {
from fileTree(dir: 'libs', include: 'armeabi/*.so') into 'build/lib'
}

tasks.withType(Compile) {
options.encoding = "UTF-8"
}

tasks.withType(Compile) {
compileTask -> compileTask.dependsOn NativeLibs
}
clean.dependsOn 'cleanCopyNativeLibs'
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniFolders = [new File(buildDir, 'lib')]
}
//依賴庫
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
gradle 作為構建工具,能夠很方便的使用本地jar包,以下為使用的代碼塊。
ependencies {
//單文件依賴
compile files('libs/android-support-v4.jar')
//某個文件夾下面全部依賴
compile fileTree(dir: 'libs', include: '*.jar')
}

android {

}
gradle 同時支持maven,ivy,由於ivy我沒用過,所以用maven 作為例子,以下為代碼塊:
repositories {
//從中央庫裡面獲取依賴
mavenCentral()
//或者使用指定的本地maven 庫
maven{
url "file://F:/githubrepo/releases"
}
//或者使用指定的遠程maven庫
maven{
url "遠程庫地址"
}
}

dependencies {
//應用格式: packageName:artifactId:version
compile 'com.google.android:support-v4:r13'}

android {

}
對於項目依賴 android library的話,就不是依賴一個jar,那麼簡單了,在這里需要使用gradle mulit project 機制。在過去,android library並沒有一個很好的包管理方式,簡單來說,在gradle出現以前,官方並沒有一種用於管理android library 依賴包的方式,一般我們都是直接下載別人的android library project 源碼進行集成,而對於第三方的android-maven-plugin 用的是apklib 格式。
而現在,官方終於推出一種android library的打包格式,擴展名為*.aar。前面提到,目前android gradle插件並不支持本地直接使用*.aar文件,不過,支持包管理庫的引用方式,下面,我為大家說一下,怎麼對android library 發布使用。
打包android library
對android library 進行打包直接在library項目下面使用gradle build 即可,然後,你就會在 build/libs 目錄下看到兩個*.aar文件,一個debug包用的,一個是release 下用的,看個人需求使用,這里我們用的是release 版本的 .aar 文件。

Ⅶ 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怎麼配置gradle環境變數

參考這個回答:

你所看到的那些gradle版本都是ide的gradle版本,如果你想使用命令行操作gradle,那些配置都是不夠的。正確的做法是去gradle官網下載一個穩定版的gradle,解壓後配置系統gradle變數,就像SDK變數一樣,配置GRADLE_HOME,這樣你才能正常的在命令行操作gradle。

Ⅸ android gradle 怎麼優化

build.gradle //設置腳本的運行環境 buildscript { //支持java 依賴庫管理(maven/ivy),用於項目的依賴。 repositories { mavenCentral() } //依賴包的定義。支持maven/ivy,遠程,本地庫,也支持單文件 dependencies { classpath 'com.android...

Ⅹ android studio 怎樣配置gradle 版本

(1) 修改gradle-wrapper.properties
修改gradle-wrapper.properties 中的 distributionUrl,改成我們想要的版本,只改後面的版本就可以了,前面的部分不要改。具體版本看下面鏈接:
Gradle下載地址:https://services.gradle.org/distributions/
(2) 打開項目
這個時候AS將自動下載gradle,並創建好目錄。這時直接幹掉Android Studio並退出,因為這一步是為了得到AS自動創建的下載目錄,定位到下面的目錄:
Linux:
~/.gradle/wrapper/dists
windows:
C:\users\{user name}\.gradle\wrapper\dists
進入對應的gradle版本文件夾下,會發現有一個一串亂碼的文件夾,本例以gradle2.4為例,如下圖:

熱點內容
小貸源碼 發布:2025-01-26 08:20:58 瀏覽:535
更換電腦名登錄伺服器 發布:2025-01-26 07:56:52 瀏覽:240
後台phpjava 發布:2025-01-26 07:12:34 瀏覽:657
微信解綁密碼是什麼 發布:2025-01-26 06:50:07 瀏覽:734
app如何訪問伺服器 發布:2025-01-26 06:36:56 瀏覽:741
拳皇安卓單機哪裡下載 發布:2025-01-26 06:30:46 瀏覽:539
注冊會員時積分消費密碼是什麼 發布:2025-01-26 06:30:45 瀏覽:247
python在大數據分析 發布:2025-01-26 06:25:27 瀏覽:596
搭建流媒體伺服器價格 發布:2025-01-26 06:25:26 瀏覽:430
泡泡堂編程 發布:2025-01-26 06:11:49 瀏覽:735