Handler系列-prepareMainLooper在哪里调用的

ActivityThread的main方法里调用prepareMainLooper

java 复制代码
public final class ActivityThread {
    public static void main(String[] args) {
        Looper.prepareMainLooper(); //创建sMainLooper

        Looper.loop();
    }
}

prepareMainLooper创建了sMainLooper

java 复制代码
public final class Looper {
    private static Looper sMainLooper;  // guarded by Looper.class

    public static void prepareMainLooper() {
        prepare(false); //创建Looper
        synchronized (Looper.class) {
            if (sMainLooper != null) {
                throw new IllegalStateException("The main Looper has already been prepared.");
            }
            sMainLooper = myLooper(); //赋值给sMainLooper
        }
    }
}
相关推荐
90后的晨仔14 小时前
Android Studio 项目模板完全指南
android
summerkissyou198714 小时前
Android-SurfaceView-投屏-常见问题
android·surfaceview
明天就是Friday14 小时前
Android实战项目④ OkHttp WebSocket开发即时通讯App 完整源码详解
android·websocket·okhttp
吉哥机顶盒刷机15 小时前
好物分享:DNA-Android-4.0.5安卓固件解包、打包工具
android·好物分享
三棱球15 小时前
App逆向学习笔记(三)——Android开发入门课
android·笔记
安卓机器16 小时前
rom定制系列------魅族16x 解锁bl root与Flyme9安卓10线刷固件 传感器修复
android·魅族16x玩机
wellc18 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
CYY9519 小时前
Android 打印 SO 库的异常日志
android
找藉口是失败者的习惯20 小时前
深入理解 Android 无障碍服务
android