AndroidはCoroutine+Retrofitを使用して簡単なHTTPリクエストライブラリを構築
1602 ワード
kotlin/coroutine/retrofit/jetpackに基づいて作られ、100行のコードで、使い方が超簡単で快適です.
デフォルトのRetrofitファクトリとグローバルエラーハンドラの設定
基本的な使い方
要求状態を表示し、HttpCallに基づいてwithSpinningメソッドを拡張
導入
https://github.com/czy1121/httpcall
デフォルトのRetrofitファクトリとグローバルエラーハンドラの設定
HttpCall.init(retrofitFactory = {
// ...
}, errorHandler = { throwable ->
// ...
})
基本的な使い方
data class Reault(val data:String)
interface TestService {
@GET("test")
fun test(): Call
}
// activity/fragment ,
http().test().result(this) {
// it Reault
}
// activity/fragment ,
http().test().response(this) {
// it Response
}
要求状態を表示し、HttpCallに基づいてwithSpinningメソッドを拡張
fun HttpCall.withSpinning(activity: FragmentActivity, spinning: Boolean = false, text: String = ""): HttpCall {
activity.apply {
if (isFinishing || isDestroyed) return@apply
val dialog = showLoading(spinning, text)
finally { dialog.dismiss() }
}
return this
}
http().test().result(this) {
Log.e("api", it.data)
}.withSpinning(this)
導入
https://github.com/czy1121/httpcall
repositories {
maven { url "https://gitee.com/ezy/repo/raw/android_public/"}
}
dependencies {
implementation "me.reezy.jetpack:httpcall:0.4.0"
}