天天看點

github 項目位址AutoSize:MQTTlottie:Android :三級關聯的滾輪選擇器:RxJava:rxbinding:Gson:Gilde:https://github.com/bumptech/glide/releases/tag/v4.7.0OKHttp:okhttp3-loginterceptorretrofit:Butter Knife (jakewharton.github.io):JNA:git位址:kotlin:

AutoSize:

implementation 'me.jessyan:autosize:1.2.1'  2021/01/22
           

https://github.com/JessYanCoding/AndroidAutoSize

MQTT

https://github.com/mcxiaoke/mqtt

lottie:

吊炸天的項目 — Lottie學習研究(入門篇)

Android :

https://github.com/airbnb/lottie-android

iOS : https://github.com/airbnb/lottie-ios

ReactNative : https://github.com/airbnb/lottie-react-native

三級關聯的滾輪選擇器:

https://github.com/androidzhangjin/citypicker

RxJava:

https://github.com/ReactiveX/RxAndroid

官網:reactivex.io

RxJava是響應式程式設計(Reactive Extensions)的java實作,它基于觀察者模式的實作了異步程式設計接口。

Rxjava 3.0的一些改變:官方Wiki;https://github.com/ReactiveX/RxJava/wiki/What's-different-in-3.0

Rxjava 3.x 文檔可以在官方javadoc中找到: RxJava Javadoc 3.1.1

1,Retrofit + RxJava3組合使用

首先要引入依賴

    implementation "io.reactivex.rxjava3:rxjava:3.0.0"

    implementation 'io.reactivex:rxandroid:1.2.1'

    implementation 'com.squareup.retrofit2:retrofit:2.7.0'

    implementation 'com.squareup.retrofit2:adapter-rxjava3:2.9.0'

相關配置module下的build.gradle

android {

    compileOptions {

        sourceCompatibility JavaVersion.VERSION_1_8

        targetCompatibility JavaVersion.VERSION_1_8

    }

}

注意Retrofit和RxJava組合使用時,Retrofit中使用的rxjava擴充卡(adapter-rxjava3)要和RxJava版本(io.reactivex.rxjava3:rxjava:3.0.0)一緻;如本例都是使用的時3.0;關于先前Rerotfit沒有Rxjava3.0擴充卡問題;android - Which rxjava3 retrofit-adapter should we use for Rxjava3 - Stack Overflow

android使用:

allprojects {
    repositories {
        maven { url "https://oss.jfrog.org/libs-snapshot" }
    }
}

dependencies {
    implementation 'io.reactivex.rxjava3:rxandroid:3.0.0'
    // 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.
    // (see https://github.com/ReactiveX/RxJava/releases for latest 3.x.x version)
    implementation 'io.reactivex.rxjava3:rxjava:3.0.0'
}
           

rxbinding:

防抖動

https://github.com/JakeWharton/RxBinding

Gson:

https://github.com/google/gson

android使用:

dependencies {
  implementation 'com.google.code.gson:gson:2.8.7'
}
           

Gilde:

https://github.com/bumptech/glide/releases/tag/v4.7.0

曆史釋出版本:

https://github.com/bumptech/glide/releases

https://github.com/bumptech/glide

repositories {

  google()

  jcenter()

}

dependencies {

  implementation 'com.github.bumptech.glide:glide:4.11.0'

  annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'

}

OKHttp:

https://github.com/square/okhttp

官網 : OkHttp

dependencies {

// define a BOM and its version

implementation(platform("com.squareup.okhttp3:okhttp-bom:4.9.0"))

// define any required OkHttp artifacts without version implementation("com.squareup.okhttp3:okhttp")

implementation("com.squareup.okhttp3:logging-interceptor")

}

okhttp3-loginterceptor

https://github.com/parkingwang/okhttp3-loginterceptor

retrofit:

https://github.com/square/retrofit/

implementation  'com.squareup.retrofit2:retrofit:2.9.0'
           

Butter Knife (jakewharton.github.io):

官網: Butter Knife

https://github.com/JakeWharton/butterknife

android {
  ...
  // Butterknife requires Java 8.
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

dependencies {
  implementation 'com.jakewharton:butterknife:10.2.3'
  annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.3'
}
           

JNA:git位址:

GitHub - java-native-access/jna: Java Native Access

kotlin:

https://github.com/android/architecture-components-samples

繼續閱讀