App启动流程图
2020-06-28 10:19:59 0 举报
应用层模块化:App 启动模块设计
作者其他创作
大纲/内容
case 已登陆
访客流程
F
case 访客
开启开屏广告初始化流程
联网获取最新AppConfig保存本地 AppConfigKeeper
启动异步更新本地 DeviceInfo 信息
PrepareActivity
判断是否初次初始化
Application:
解析缓存的上一次AppConfig
T
推送初始化Bugly初始化
T
最新 DeviceInfo
倒计时结束销毁资源跳转PrepareActivity
根据广告重设倒计时(delayTime)
onCreate:
enterAppAction后续流程判断
onCreate:
开发日志初始化配置热修复fix方法执行App基本信息录入
App Device Chche SP
attachBaseContext:
首页
更新手机OS软硬件信息
case 登录流程
是否是主线程
初始化设备信息数据SP存储容器启动设备数据填充线程Thread-r3(io RxJava Pool ): 获取设备基本信息 BuildMsg Device生产商信息 Debug状态 屏幕信息 OS语言信息 OS时区信息 获取设备CPU信息 Cpu名称 Cpu架构(指令集) Cpu厂商 Cpu核数(线程并发计算参数) Cpu序列号 设备唯一识别信息 Sim卡状态 OS特征基串 设备IMSI 设备IMEI Sim卡序列号 DeviceId(UUID 唯一) 设备Root状态信息 设备是否root 设备网络状态信息 当前网络类型 内网IP 外网IP
Thread-r4(io RxJava Pool): 保存基本设备数据信息至SP 全面更新关键数据至:DeviceInfo 全面更新关键数据至:YiXiaSDK
getInstance
AppSplashActivity
登录流程
初始化网络配置Fresco初始化Utils通用工具初始化关键按钮显示按钮配置长链接初始化Thread-1: ZEGO初始化 上传工具初始化 阿里电商初始化 网络请求基本配置设定 初始化晃咖sdk 初始化ABtest 初始化YXMonitor 初始化BlockCanary 配置StrictModeThread-2: LogCense关联操作 Log用户信息更新 友盟日志初始化 商汤日志初始化 图片检测加载数美反作弊初始化注册全局生命周期监听
App冷启动时长跟踪initApp热修复初始化
HardWareDeviceUtils(Scraper)
Handler -ActivityThread -更新结果至当前主线程
onCreate结束
广告流程判断广告类型判断是否存在缓存显示广告通知主线程(详情见附件)
判断是否存在缓存AppConfig
analysisAppConfig根据联网配置启动数据预加载流程默认启动倒计时(1.5s)
RequestExecutors: 联网加载:h5地址等数据的请求 联网加载:频道列表 联网加载:斗地主主播白名单 联网加载:同步PK惩罚数据 Thread-r5(io RxJava Pool): 下载webp资源 下载首页底部栏动画资源 下载礼物 下载webp资源包奥 检查App更新(走更新模块) 下载载入界面图标
0 条评论
下一页