收集了常用的開源庫的比較穩定的版本
俗稱黃油刀,view綁定ID神器
dependencies {
compile 'com.jakewharton:butterknife:8.7.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.7.0'
}
最新版使用了預編譯技術大大提高了注解模式的效率
使用方法:在Project的build.gradle里
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.jakewharton:butterknife-gradle-plugin:8.7.0'
}
}
module的build.gradle里加入
apply plugin: 'com.jakewharton.butterknife'
...
...
dependencies {
compile 'com.jakewharton:butterknife:8.7.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.7.0'
}
具體code中使用方式:http://jakewharton.github.io/butterknife/
8.7版本官方使用說明,右鍵保存
http://upload-images.jianshu.io/upload_images/3515789-172e559b1a0275f3.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
或者可以使用舊版,沒有預編譯的版本
compile 'com.jakewharton:butterknife:7.0.1'
2 retrofit
集成了okhttp
//這個包里集成了okhttp3.6
compile 'com.squareup.retrofit2:retrofit:2.2.0'
//使retrofit2支持gson的轉換
compile 'com.squareup.retrofit2:converter-gson:2.2.0'
//Retrofit對Rxjava的支持
compile 'com.squareup.retrofit2:adapter-rxjava2:2.2.0'
RxJava針對Android的版本
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
// Because RxAndroid releases are few and far between, it is recommended you also
// explicitly depend on RxJava's latest version for bug fixes and new features.
compile 'io.reactivex.rxjava2:rxjava:2.0.1'
4 glide
一行代碼顯示圖片,已經更新了V4穩定版,具體用法看官網
Glide.with(this).load("http://goo.gl/gEgYUd").into(imageView);
compile 'com.github.bumptech.glide:glide:3.7.0'
5 Android-ObservableScrollView
可以實現CoordinatorLayout+Behavior的效果,類似知乎首頁,隱藏標題欄,操作欄
compile 'com.github.ksoichiro:android-observablescrollview:1.6.0'
解決RxJava內存泄露問題,用來嚴格控制由于發布了一個訂閱后,由于沒有及時取消,導致Activity/Fragment無法銷毀導致的內存泄露 。
//包含了RxJAVA2.0.1和Rxandroid2.0.1
compile 'com.trello.rxlifecycle2:rxlifecycle:2.0.1'
compile 'com.trello.rxlifecycle2:rxlifecycle-components:2.0.1'
錯誤解決方法!!!!!!
警告:Conflict with dependency 'com.google.code.findbugs:jsr305'. Resolved versions for app (3.0.1) and test app (2.0.1) differ. See http://g.co/androidstudio/app-test-app-conflict for details.
//強制test使用3.0.1版本的,每個gradle都要寫
androidTestCompile 'com.google.code.findbugs:jsr305:3.0.1'
RecycView二次封裝,高度自定義
compile 'com.jcodecraeer:xrecyclerview:1.3.2'
注意recyclerView.refreshComplete();
的使用要放在adapter數據更新后(未知bug)
project gradle中
allprojects {
repositories {
...
maven { url "https://jitpack.io" }
}
}
Gradle
dependencies {
compile 'com.github.lzyzsd:circleprogress:1.2.1'
}
9 EventBus
神器啊,既能訂閱前發送信息給訂閱者,又能訂閱后再發送信息給訂閱者,耦合幾乎為0。
compile 'org.greenrobot:eventbus:3.0.0'
UltraViewPager是一個封裝多種特性的ViewPager,主要是為多頁面切換場景提供統一解決方案。阿里出品。
compile ('com.alibaba.android:ultraviewpager:1.0.4@aar') {
transitive = true
}
Indicator 取代 tabhost,實現網易頂部tab,新浪微博主頁底部tab,引導頁,無限輪播banner等效果,高度自定義tab和特效。是一個很強大的庫,從某個角度上包含了10的功能
compile 'com.shizhefei:ViewPagerIndicator:1.1.6'
由于用到了v4和recyclerview所以也要導入他們
compile 'com.android.support:support-v4:23.4.0'
compile 'com.android.support:recyclerview-v7:23.4.0'
用編譯時注解實現動態權限申請的開源庫,讓你面對API 23+也能保持代碼整潔高效。github上star有5000+
app module build.gradle file中:
compile("com.github.hotchemi:permissionsdispatcher:2.4.0") {
// if you don't use android.app.Fragment you can exclude support for them
exclude module: "support-v13"
}
annotationProcessor "com.github.hotchemi:permissionsdispatcher-processor:2.4.0"
Snapshots of the development version are available in JFrog's snapshots repository. Add the repo below to download SNAPSHOT releases.
repositories {
jcenter()
maven { url 'http://oss.jfrog.org/artifactory/oss-snapshot-local/' }
13 greenDAO
greenDAO is a light & fast ORM for Android that maps objects to SQLite databases. Being highly optimized for Android, greenDAO offers great performance and consumes minimal memory.
主頁:http://greenrobot.org/greendao/
// In your root build.gradle file:
buildscript {
repositories {
jcenter()
mavenCentral() // add repository
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.1'
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2' // add plugin
}
}
// In your app projects build.gradle file:
apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao' // apply plugin
dependencies {
compile 'org.greenrobot:greendao:3.2.2' // add library
}
未完