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
        }
    }
}
相关推荐
雨白1 天前
Jetpack Compose 实战:复刻 Material 3 圆形波浪进度条
android·android jetpack
q***23921 天前
MySQL JSON数据类型全解析(JSON datatype and functions)
android·mysql·json
weixin_446260851 天前
Windows 安装原生安卓 App!无需模拟器,秒装谷歌商店!
android
fruge1 天前
移动端 H5 兼容问题合集:iOS 与 Android 的差异化处理
android·ios
2501_915909061 天前
iOS 上架需要什么东西?一次从准备清单到实操流程的完整技术拆解
android·macos·ios·小程序·uni-app·cocoa·iphone
成都大菠萝1 天前
Android层级分布
android
用户69371750013841 天前
8.Kotlin 类:类的基础:主构造函数与次构造函数
android·后端·kotlin
用户69371750013841 天前
9.Kotlin 类:类的核心:属性 (Property) 与自定义访问器 (Getter/Setter)
android·后端·kotlin
kerli1 天前
Android:使用 Tint 为图标 Icon 动态着色
android
hqk1 天前
鸿蒙零基础语法入门:开启你的开发之旅
android·前端·harmonyos