(系列文章点这里)
Launcher3作为一个用户经常使用,常驻内容的应用,运行时维护着许多信息,而这些信息都需要在开机的时候加载完,今天就来分析下Launcher3是怎样一步一步启动的。
如果你手里还没有源码,请点击这里,编译并让他在你的手机上运行。然后打开Eclipse,一步步跟着走。
在启动Launcher这个Activity之前,先看下桌面的LauncherApplication吧,任何一个组件(Component)启动之前都会启动他的。代码只有寥寥几行。
LauncherAppState我们在上一篇博客里面说过,主要用来初始化对象,注册广播接收器等等,这些都在他的构造方法里面完成了。这里监听的广播有应用的安装、卸载和更新,SD卡上应用的可用或不可用,地区变化和配置变化等等。接收应用安装更新什么的广播,都是为了方便实时更新桌面上的图标,如果用豌豆荚安装了应用会在桌面上马上显示出来,这都是这些个广播接收器在发挥作用。需要注意的是贯穿始终的LauncherModel就是在这个构造方法里初始化的。
准备工作做好了,就开始启动Launcher Activity。Activity的启动从onCreate开始查找。
(更多…)