kotlin

retrofit + rxjava 获取网络数据(以获取帆软token作为例子)

柔情痞子 提交于 2020-11-17 03:25:11
retrofit + rxjava 获取网络数据(以获取帆软token作为例子) 技术介绍 本文使用retrofit + rxjava 通过相关url获取数据并处理,语言使用的是kotlin,构建工具使用maven。以帆软接口作为例子,帆软接口返回的其实是jsonp的格式,后端获取时类型为 String 。 过程介绍 1. 创建服务的接口api对象 interface FineReportApi { @GET fun getFineReportData(@Url url: String, @Nullable @QueryMap map: HashMap<String, String>): Observable<String> } 其中 @GET 表示请求接口方式为get, @Url 为请求路径的相对url(注意,这里是相对,因为基础地址我们会在另外一个地方配置。), @QueryMap 为查询参数,此处我们可以以一个HashMap形式直接传递。 2. retrofit 具体请求过程 // 此处为log日志拦截器,可以显示具体的请求日志信息 private val logInterceptor = HttpLoggingInterceptor().apply { this.level = HttpLoggingInterceptor.Level.BODY } private val

Android Jetpack(1):Jetpack介绍

倾然丶 夕夏残阳落幕 提交于 2020-11-15 07:40:51
Jetpack官网 Android Jetpack 2018年谷歌I/O 发布了一系列辅助android开发者的实用工具,合称Jetpack,以帮助开发者构建出色的 Android 应用。Android Jetpack 完美兼容 Kotlin 语言,利用 Android KTX 可大幅节省代码量。 Jetpack中的有些组件并不是第一次推出,其中LifeCycle、LiveData、ViewModel、Room等组件早在 Google I/O 2017年大会上就随着 Android Architecture Component(AAC)一起推出了,但是推广效果一般。时隔一年后谷歌在AAC的基础之上发布了Jetpack,并发布了其他工具以解决Android技术选型乱以及开发不规范等问题。 Jetpack 是一套库、工具和指南,可帮助开发者更轻松地编写优质应用。这些组件可帮助您遵循最佳做法、让您摆脱编写样板代码的工作并简化复杂任务,以便您将精力集中放在所需的代码上。 Jetpack 包含与平台 API 解除捆绑的 androidx.* 软件包库。这意味着,它可以提供向后兼容性,且比 Android 平台的更新频率更高,以此确保您始终可以获取最新且最好的 Jetpack 组件版本。 现在在 Google 应用市场当中,大部分 APP 已经开始使用 Android Jetpack。通过