1.依賴外部的本地二進制包(Localpackages)
添加本地jar
將jar包拖到libs目錄下
添加依賴方法:
dependencies {
compile files('libs/foo.jar')
}
android {
...
}
添加本地aar(若內(nèi)部庫不想公開就作為添加本地庫,否則可以上傳到遠端倉庫)
將aar包拖到libs目錄下
添加依賴方法:
android{
repositories {
flatDir {
dirs 'libs'
}
}
}
dependencies {
compile(name:'abc',ext:'aar')
}
2.依賴遠端倉庫(Remote artifacts)
添加依賴方法:
dependencies {
compile 'com.google.guava:guava:11.0.2'
}
倉庫目錄組成:packageName. artifactsId. version
遠程倉庫本地緩存目錄:.gradle/caches/modules-2/files-2.1 + 倉庫目錄 / (.pom/.jar/.aar文件)
3.依賴庫工程
添加依賴方法:
在build.gradle中添加
dependencies{
compile project(':food')
}
在settings.gradle中添加
include ':food'
project(':food').projectDir = new File('../food/library')
普通工程與庫工程的區(qū)別
1.庫工程:產(chǎn)出一個.aar包(其中整合了jar文件,原聲的.so文件和資源文件 ex.manifest,res,assets)與jar的區(qū)別在于 jar不能包含資源文件
構建普通工程與庫工程時使用不同的gradle插件
gradle配置文件中配置插件:
applyplugin:'com.android.library'
2.普通工程:產(chǎn)出一個apk
gradle配置文件中配置插件:
applyplugin:'com.android.application'
compile fileTree(dir: 'xxx', include: ['.jar', ".xxx"]):將某個目錄下所有符合擴展名的文件作為依賴;
compile 'com.xx.xx:ProjectName:Version':配置Maven` 庫作為依賴;在 Maven 庫中心 可以搜索自己想用的庫進行依賴;
compile project(':AnotherModule'):配置另一個 Module 作為本 Module 的依賴,被依賴的 Module 必須被導入到當前工程中;
compile files('xxx.jar'):配置某個 jar 包作為依賴。
git操作流程圖

命令總結
Git常用基本命令
git init ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?新建git代碼庫
git clonessh://zhangxi13@meituan ? ? ? ? 克隆代碼庫
git diff ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 顯示暫存區(qū)和工作區(qū)的差異
git branch 分支名稱 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 新建一個分支,但停留在當前分支
git checkout 分支名稱 ? ? ? ? ? ? ? ? ? ? ? ? ? ? 切換到指定分支
git checkout -b 分支名稱 ? ? ? ? ? ? ? ? ? ? ? ? 新建指定分支并切換到指定分支
git log ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?查看提交日志
git status ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 顯示有變更的文件及變更狀態(tài)
git add ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 添加文件到暫存區(qū)
git commit -m ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?提交暫存區(qū)到倉庫
git amend ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?使用一次新的commit替代上一次提交
git push origin branchName ? ? ? ? ? ? ? ? ? ?上傳本地分支的修改到遠程倉庫
git pull --rebase ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 拉取遠程倉庫代碼到本地
git reset commitId ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 重置緩存區(qū)的改變與指定的commit保持一致,工作區(qū)不變
git stash ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?暫存當前進行的工作
git stash pop ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 從git棧中讀取對工作區(qū)的臨時保存,恢復工作區(qū)內(nèi)容
2.Gradle常用命令
./gradlew -v ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 版本號
./gradlew clean ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 清除app目錄下的build文件夾
./gradlew build ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?檢查依賴并編譯打包
./gradlew assembleDebug ? ? ? ? ? ? ? ? ? ? ?編譯并打Debug包
./gradlew assembleRelease ? ? ? ? ? ? ? ? ? 編譯并打Release包
./gradlew assemble渠道名 ? ? ? ? ? ? ? ? ? ? ?只打指定渠道的Debug和Release包