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
        }
    }
}
相关推荐
xianrenli3834 分钟前
android特许权限调试
android
*拯3 小时前
Uniapp Android/IOS 获取手机通讯录
android·ios·uni-app
天天打码5 小时前
Lynx-字节跳动跨平台框架多端兼容Android, iOS, Web 原生渲染
android·前端·javascript·ios
lilili啊啊啊7 小时前
iOS safari和android chrome开启网页调试与检查器的方法
android·ios·safari
Blue.ztl10 小时前
菜鸟之路day31一一MySQL之多表设计
android·数据库·mysql
练习本13 小时前
Android系统架构模式分析
android·java·架构·系统架构
每次的天空18 小时前
Kotlin 内联函数深度解析:从源码到实践优化
android·开发语言·kotlin
练习本18 小时前
Android MVC架构的现代化改造:构建清晰单向数据流
android·架构·mvc
早上好啊! 树哥19 小时前
android studio开发:设置屏幕朝向为竖屏,强制应用的包体始终以竖屏(纵向)展示
android·ide·android studio
YY_pdd19 小时前
使用go开发安卓程序
android·golang