国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Android使用 Coroutine + Retrofit打造簡單的HTTP請(qǐng)求庫

瀏覽:7日期:2022-09-20 10:12:05

基于 kotlin/coroutine/retrofit/jetpack 打造,100來行代碼,用法超級(jí)簡單舒適

設(shè)置默認(rèn)Retrofit工廠和全局錯(cuò)誤處理程序

HttpCall.init(retrofitFactory = { // ...}, errorHandler = { throwable -> // ...})

基本用法

data class Reault(val data:String)interface TestService { @GET('test') fun test(): Call<Reault> } // 在 activity/fragment 中使用,獲取請(qǐng)求結(jié)果http<TestService>().test().result(this) { // it 是 Reault}// 在 activity/fragment 中使用,獲取請(qǐng)求響應(yīng)對(duì)象http<TestService>().test().response(this) { // it 是 Response<Result>}

顯示請(qǐng)求狀態(tài),基于 HttpCall擴(kuò)展出 withSpinning 方法

fun <T : Any> HttpCall<T>.withSpinning(activity: FragmentActivity, spinning: Boolean = false, text: String = ''): HttpCall<T> { activity.apply { if (isFinishing || isDestroyed) return@apply val dialog = showLoading(spinning, text) finally { dialog.dismiss() } } return this}http<TestService>().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' }

標(biāo)簽: Android
相關(guān)文章:
主站蜘蛛池模板: 中国一级淫片aaa毛片毛片 | 亚洲精品一区二三区在线观看 | 亚洲精品国产精品国自产 | 午夜香蕉网 | 国产精品自在欧美一区 | 亚洲精品国产第一区二区多人 | 免费高清毛片在线播放视频 | 亚洲国产经典 | 精品在线一区 | 精品国产午夜肉伦伦影院 | 久草首页在线 | 国产精品亚洲精品日韩已方 | 国产v片在线播放免费观 | 在线国产二区 | 日韩乱码视频 | 亚洲高清毛片 | 精品国产自在在线在线观看 | 99爱在线视频这里只有精品 | 国产精品18久久久久久久久久 | 久久96国产精品久久久 | 亚洲综合网址 | 国产成人精品日本亚洲语音1 | 色吊丝avav色吊丝 | 美女一级ba大片免色野外 | 欧美成人手机视频免费播放 | 日本二级毛片免费 | 久久精品视频免费在线观看 | 免费视频成人 | 久久精品国产一区二区 | 日韩 欧美 国产 师生 制服 | 视频一区中文字幕 | 日本亚洲欧美在线 | 国产一区二区三区精品久久呦 | 99久久国产综合精品1尤物 | 国产欧美日韩精品在线 | 久久精品国产91久久综合麻豆自制 | 日韩国产成人资源精品视频 | 色樱桃影院亚洲精品影院 | 国产精品成人免费综合 | 亚洲精品不卡午夜精品 | 一区二区三区在线免费视频 |