官方表示:Handler ()此构造函数已弃用。在 Handler 构造期间隐式选择 Looper 可能会导致操作丢失(如果 Handler 不期待新任务并退出)、崩溃(如果有时在没有 Looper 活动的线程上创建处理程序)或竞争条件的错误,与处理程序关联的线程不是作者预期的。相反,使用Executorhttps://developer.android.com/reference/java/util/concurrent/Executor或明确指定 Looper,使用Looper.getMainLooper()。如果为了兼容性需要隐式线程本地行为,请使用 new Handler(Looper.myLooper())
  • new Handler(Looper.myLooper()) 获取当前线程的Looper
  • new Handler(Looper.getMainLooper()) 获取主线程的Looper

注:如果是主线程创建handler这两没区别,你要是在子线程里创建handler这两就不一样了。

private Handler mHandler = new Handler(Looper.getMainLooper()) {@Overridepublic void handleMessage(Message msg) {switch (msg.what) {case MSG_DOWN_FAIl:break;}}
};
private Handler mHandler = new Handler(Looper.myLooper()) {@Overridepublic void handleMessage(Message msg) {switch (msg.what) {case MSG_DOWN_FAIl:break;}}
};

Handler()过时相关推荐

  1. android 静态方法 构造方法,Android通过静态内部类构建Handler提示构造方法过时

    Android中通常使用Handler来进行不同线程间的通讯以及消息的异步处理,但在定义Handler时,为防止出现内存泄漏风险,最好的方式是通过构建静态内部类实现. private MyHandle ...

  2. SpringMVC 实例 --非注解【过时的,留作回忆】

    练习项目:test SpringMVC 实例 --非注解,只用于学习理解.到了spring 3.0以后或许部分东西已经过时了,在实际工作中并不一定好用. 但对于理解SpringMVC的实现方式很有帮助 ...

  3. android Ble4.0蓝牙开发之搜索慢、startLeScan()过时,6.0以上不需要定位权限也能快速搜索到蓝牙设备

    项目中需要用到android Ble蓝牙4.0开发技术,于是开启了蓝牙填坑之旅,说实话,蓝牙开发坑真多,跳出一个又进入下一个,每次遇到 问题,就觉得不可能解决了,还好在自己的摸索中,都一一的化解了,以 ...

  4. 为什么UI线程中创建Handler可以不传Looper?

    一个APP程序的入口是ActivityThread的main方法,ActivityThread就是我们常说的主线程或UI线程,事实上它并不是一个线程,而是主线程操作的管理者. public stati ...

  5. Android中Handler消息机制

    作用:跨线程通信. 应用:AsyncTask.retrofit都对Handler进行了封装. 四要素:Message.MessageQueue.Looper.Handler Message简介: 线程 ...

  6. Python:urllib2模块Handler处理器 和 自定义Opener

    Handler处理器 和 自定义Opener opener是 urllib2.OpenerDirector 的实例,我们之前一直都在使用的urlopen,它是一个特殊的opener(也就是模块帮我们构 ...

  7. Android Handler sendMessage和 sendMessageDelayed的使用

    sendMessage :立即发送消息 sendMessageDelayed:指定多少毫秒后发送消息. 其实常用的还有2个 sendEmptyMessage 发送空消息,  一般自己想把某种操作放到子 ...

  8. Handler 实现的一个循环操作

    这个使用Handler 实现的一个循环操作还是比较简单的,下面就直接给出demo了 一个间隔5s 弹一次Toast 的demo 如下 public class MainActivity extends ...

  9. Handler 实现的一个延时操作

    今天回顾下handler 记录一个延时的demo 使用 postDelayed 主要代码如下: public class MainActivity extends AppCompatActivity ...

最新文章

  1. Mybatis传多个参数(推荐)
  2. 杭电1000 A + B Problem
  3. python基础教学视频-Python基础教程(附教学视频)
  4. 基于局部均方差相关信息的图像去噪及其在实时磨皮美容算法中的应用
  5. 分布式系统理论之租约机制学习
  6. html绝对定位最小化超标,html – 静态定位元素影响后续兄弟元素的绝对位置
  7. 扫地机器人湿地_仅仅是打湿地板而已?定价高了,石头扫地机器人的拖地却仍很一般...
  8. mysql服务器处理查询的模型_mysql02---客户端与服务器模型
  9. maven 细节 —— scope、坐标
  10. TeeChart7 在delphi7中的安装步骤
  11. 三人表决器Verilog
  12. Linux下C++ libtorrent库使用
  13. AI矢量绘图_Illustrator 2022矢量图形编辑制作
  14. 【视频MV】laislabonita美丽的海岛*女歌星Alizee(艾莉婕)
  15. viper4android 2.5正版,VIPER4Android最新版本
  16. (附源码)springboot教材订购系统 毕业设计 081419
  17. 阿里云数据库开源发布:PolarDB 三节点高可用的功能特性和关键技术
  18. 消失的梯度问题(vanishing gradient problem)
  19. Java中Number转为百分比
  20. 【vue2】axios请求与axios拦截器的使用详解

热门文章

  1. 人力资源数字化如何导致组织成功的 3 个示例
  2. 拥抱区块链,ofo能否解燃眉之急?
  3. 信管师培训之第六节课作业(项目质量管理+项目人力资源管理)
  4. 股票数据常见的两种获取方法是什么?
  5. 关于kingoroot这款软件
  6. Matplotlib轮廓图
  7. 为什么明知违法,互联网大厂还在提倡996?
  8. 互联神州2008年十一superCCNA
  9. 国家教育资源公共服务平台
  10. 拼团状态的时效性 java_Java生鲜电商平台-小程序或者APP拼团功能设计与架构实战...