前言Retrofit 和 RxJava 已经出来很久了,很多前辈写了很多不错的文章,在此不得不感谢这些前辈无私奉献的开源精神,能让我们站在巨人的肩膀上望得更远。先放出 build.gradle:本文是基于 RxJava1.1.0 和 Retrofit 2.0.0-beta4 来进行的。 初始化Retrofit新建类Api,此类就是初始化 Retrofit,提供一个
转载
2024-10-22 14:17:27
23阅读
公司和A公司有技术合作,需要把接口封装成sdk供A公司调用,我被安排来做这个事情。这里记录一下封装jar并混淆的过程中遇到的一些问题,本文使用的IDE是AndroidStudio。false 从来没有深究过有什么意义(以后还是要多研究一下这些不起眼的小细节,没准那一天就把你拌趴下了),原来这个标志就是代码混淆的开关,默认是关闭的,所以之前虽然配置了混淆文件,但
转载
2024-06-24 13:23:54
35阅读
# Android Kotlin Flow网络封装
在Android开发中,网络请求是一个必不可少的功能。近年来,Kotlin语言和Flow库的流行,为我们提供了更加简洁、高效的方式来处理网络请求。本文将介绍如何使用Kotlin和Flow库来进行Android网络封装,并且提供相应的代码示例。
## 1. 什么是Flow库
Flow是Kotlin协程库的一部分,它提供了一种符合响应式编程的方
原创
2023-11-28 09:54:17
474阅读
大家好,今天原创。在上一篇原创文章当中,我跟大家说了会开启一个新的系列,讲一讲Kotlin Flow响应式编程从入门到进阶的内容。总共计划是用三篇文章讲完,而本篇则是这个系列的第二篇文章。如果你还没有看过前面的基础知识入门的话,可以先去参考这里 Kotlin Flow响应式编程,基础知识入门 。本篇文章我打算着重讲解一下操作符函数的相关内容。什么是操作符函数?如果你熟悉RxJava,那么
AsyncTask是什么AsyncTask是一种轻量级的异步任务类,它可以在线程池中执行后台任务,然后把执行的进度和最终结果传递给主线程并主线程中更新UI,通过AsyncTask可以更加方便执行后台任务以及在主线程中访问UI,但是AsyncTask并不适合进行特别耗时的后台任务,对于特别耗时的任务来说,建议使用线程池AsyncTask的使用我们简单的模拟下载文件的案例来分析,我们创建自己的异步类继
转载
2023-08-27 22:43:58
98阅读
## Android 异步线程封装
在 Android 开发中,我们经常会遇到需要在后台执行耗时任务的情况,比如网络请求、文件读写等。为了避免在主线程中执行这些耗时任务导致界面卡顿,我们通常会使用异步线程来进行处理。但是,直接使用原生的线程操作并不方便,容易出现内存泄漏、线程安全等问题。因此,我们通常会对异步线程进行封装,以提高代码的可读性和可维护性。
### 异步线程封装的优点
1. 提高
原创
2024-04-30 05:46:19
39阅读
Android网络异步请求库Volley简介与基本用法一、Volley简介 在开发Android应用的时候不可避免的需要使用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接受网络数据。Android系统中主要提供了两种方式进行HTTP通信,HttpURLConnection和HttpClient(在Android 6.0之后被完全废弃)。 不过HttpURLConnection和Ht
转载
2023-06-14 13:50:51
298阅读
乍一看很懵逼,其实简单的说,协程就是可以控制线程切换的代码,或能实现类似的功能的,可以让异步代码同步化,如JS里的async和await等。 这种方式可以给我们简化代码,使得业务逻辑清晰。最常见于网络请求的回调,如一般我们会有一个成功的回调和一个失败的回调,按照异步的写法,两个回调方法中都要处理逻辑,协程可以使异步回调按照同步的方式去返回结果,写法简单,清晰。kotlin通过suspend关键字来
1.概述 先简单介绍下Handler异步消息处理机制中涉及到几个关键类:Message,Handler,Looper,MessageQueue Message:消息的承载体; Handler:消息的发送者和处理者; Looper:内部持有MessageQueue,负责从MessageQueue中循环读取Message(需要注意的是,Looper和Thread是一一对应的,即一个Thread只有一个
在传统的Web开发中,与服务器进行通信主要是通过同步请求的方式(即刷新页面)来实现,如果同步请求的次数过于频繁,就会产生大量无用、重复的数据占用带宽。 Ajax完全摒弃了这种信息交互方式,它通过XMLHttpRequest组件,在不需要刷新页面的情况,与服务器保持异步通信和联系,服务器根据需要进行最小化响应,而不是完整页面的重复发送。Ajax工作原理: 简单来说,就是通过JS中的XMLHttpRe
【代码】Android flow 每秒异步返回一个值。
原创
2023-03-16 07:37:27
111阅读
一、简介它和OkHttp的定位完全不同。OkHttp 侧重的是底层通信的实现,而Retrofit侧重的是上层接口的封装。事实上,Retrofit就是Square 公司在OkHttp的基础上进一步开发出来的应用层网络通信库,使得我们可以用更加面向对象的 思维进行网络操作添加必要的依赖库dependencies {
...
implementation 'com.squareup.retrofit
Android Studio安装包下载地址 里面有带jdk的安装包 http://www.android-studio.org/以下代码整理实践,亲测可行 1、控件准备res/layout/activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.
转载
2023-05-31 20:03:22
109阅读
一、使用 Flow 异步流持续获取不同返回值、二、Flow 异步流获取返回值方式与其它方式对比、三、在 Android 中 使用 Flow 异步流下载文件
原创
2022-12-24 00:45:22
346阅读
近日,写了一个对网络 socket 进行封装的类,主要是在异步阻塞模式下进行数据、文件的发送的发送和接收,都是静态方法。代码如下:
1using System;
2using System.Net ;
3using System.Net.Sockets ;
4using System.IO ;
5using LogDll;
6
7namespace NetDll
一、概述:(一)、什么是FlowLayout? 何为FlowLayout,就是控件根据ViewGroup的宽,自动的往右添加,如果当前行剩余空间不足,则自动添加到下一行。有点所有的控件都往左飘的感觉,第一行满了,往第二行飘,所以也叫流式布局。 Android并没有提供流式布局,但是某些场合中
转载
2023-12-08 09:36:41
146阅读
1. 流程引擎API与服务引擎API是与Flowable交互的最常用手段。总入口点是ProcessEngine。像配置章节中介绍的一样,ProcessEngine可以使用多种方式创建。使用ProcessEngine,可以获得各种提供工作流/BPM方法的服务。ProcessEngine与服务对象都是线程安全的,因此可以在服务器中保存并共用同一个引用。@Test
void processEng
转载
2024-06-26 13:01:39
122阅读
Flow 简介Google 推荐在 MVVM 架构中使用 Kotlin Flow,可见其发展前景是非常好的。Kotlin Flow 可以用于替换 Rxjava,也可以用于替换 LiveData,功能十分强大,它是 Kotlin 协程库提供的一部分功能,因此,如果我们项目中已经引用了 Kotlin 协程,则不需要额外引入 Flow 相关的依赖。在协程中,挂起函数最多仅能返回一个值,而数据流 Flow
转载
2023-09-18 16:08:38
186阅读
Flow 简介Google 推荐在 MVVM 架构中使用 Kotlin Flow,可见其发展前景是非常好的。Kotlin Flow 可以用于替换 Rxjava,也可以用于替换 LiveData,功能十分强大,它是 Kotlin 协程库提供的一部分功能,因此,如果我们项目中已经引用了 Kotlin 协程,则不需要额外引入 Flow 相关的依赖。在协程中,挂起函数最多仅能返回一个值,而数据流 Flow
转载
2023-09-18 16:08:39
179阅读
# Android AsyncTask单独封装处理异步任务
在Android开发中,异步任务是非常常见的一种需求。比如在进行网络请求、文件读写、耗时计算等操作时,我们通常会使用异步任务来避免阻塞主线程,提高用户体验。Android提供了AsyncTask类来方便地处理异步任务,但是使用过程中可能会存在一些不方便的地方,特别是当需要在多个地方使用相同的异步任务时。为了更好地封装和复用异步任务,我们
原创
2023-07-16 11:56:22
46阅读