位置: 编程技术 - 正文
推荐整理分享Android 下的 bolts tasks(androidobb),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:android boost,android-bootstrap,android.bp,android-bootstrap,android.bp,android-bootstrap,android booster,androidobb,内容如对您有帮助,希望把文章链接给更多的朋友!
本文主要介绍的是在Android 下使用 bolts tasks, bolts tasks 可以很方便的让我们将一些异步task关联起来执行。让这些tasks有顺序的执行(当我们一个task的执行要基于另一个task的时候)。
1. github 地址 Bolts-Android2. gradle中引用3. 具体的使用(我也是初学者,只是偶尔用过一次。理解的也很简单,我只是列出这个库里面我用到的一些方法,望见谅)
既然是task 肯定要知道他在那个线程中运行的。 Boots tasks 源码中总共有三种形式
BACKGROUND_EXECUTOR 我把他理解成是后台线程。 IMMEDIATE_EXECUTOR 我把他理解成是当前线程,当然如果当前线程路径太深也会是后台线程。 UI_THREAD_EXECUTOR 我把他理解是UI线程(Handler(Looper.getMainLooper()).post())
1). 执行单个的任务
我把他理解成是后台异步处理。
我把他理解成是在同一个线程执行。
UI线程执行。
2). 多个任务顺序执行
第一个任务(Task.call的任务) 是在调用者的同一个线程执行。我这里做的动作只是显示waitting dialog。 第二个任务(onSuccess跟上的任务)注意onSuccess的第二个参数是 Task.BACKGROUND_EXECUTOR 表示在后台执行可以做一些耗时的操作,并且会把返回值传到下一个任务。 第三个任务(continueWith跟上的任务)是获取到上一个任务的返回值。在做一些具体的动作。 onSuccess 顾名思义是在第一个任务成功执行的基础上在执行的(第一个任务没有抛异常)。continueWith 顾名思义是在上一个任务执行完的基础上执行的不管有没有抛异常都会执行(当有异常的时候我们会在下文中提到怎么获取到异常)。 3). 多个任务并行执行。
第二个任务中会执行两个任务,等两个任务都执行完了才会往下执行,第三个任务可以获取到上一个中的两个任务的返回值
两个任务的具体声明如下实现部分我去掉了,ReachableIP是自定义的class:
4). Exception处理
因为任务在哪里有异常我们是可以预知到的,当有异常的时候,我们catch到再转换为我们自己的异常在thorw出来如上面的ResponseError 是我们自定义的异常,这样我们task.getError出来了可以做不同的处理。
4. 总结我自己也是新手,我只是偶尔在项目中用到了Blots Task的库,我只是列举了一些非常简单的我用到的方法,其实还有很多方法我没用到。希望大家共同进步。
Android的事件处理机制 Android提供了强大的事件处理机制,包括两套事件处理机制:基于监听的事件处理。对于基于监听的事件模型来说,事件源和事件监听器是分离的,当事
setBackgroundDrawable和setBackgroundColor的用法 1.设置背景图片;textView.setBackgroundDrawable(getResources().getDrawable(R.drawable.guohou));2.转换字符串为int(颜色);listItemView.deleteFilghtBg.setBackgroundColor(Color.parseCol
Android开发之Toast Toast根据上面的总结可以得出,Toast不仅能现能显示文本,还可显示图片,而且还可图片和文字混合显示,根据toast.setView(V),参数v是一个view,有根据view
标签: androidobb
本文链接地址:https://www.jiuchutong.com/biancheng/387502.html 转载请保留说明!友情链接: 武汉网站建设