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
        }
    }
}
相关推荐
sunbofiy234 分钟前
去掉安卓的“读取已安装应用列表”,隐私合规
android
cch89187 分钟前
DCATAdmin后台框架极速上手
android
Ehtan_Zheng35 分钟前
ActivityMetricsLogger 深度剖析:系统如何追踪启动耗时
android
用户69371750013841 小时前
Android 开发,别只钻技术一亩三分地,也该学点“广度”了
android·前端·后端
唔662 小时前
原生 Android(Kotlin)仅串口「继承架构」完整案例二
android·开发语言·kotlin
一直都在5722 小时前
MySQL索引优化
android·数据库·mysql
代码s贝多芬的音符3 小时前
android mlkit 实现仰卧起坐和俯卧撑识别
android
jwn9994 小时前
Laravel9.x核心特性全解析
android
今天又在写代码5 小时前
数据智能分析平台部署服务器
android·服务器·adb
梦里花开知多少5 小时前
深入谈谈Launcher的启动流程
android·架构