一.Launcher是什么
Launcher是启动器的意思,最直观的就是手机上的桌面.其实它是个Activity.
public class Launcher extends Activity implements View.OnClickListener, OnLongClickListener, LauncherModel.Callbacks,
它负责管理桌面,包括显示快捷方式,widget,拖动图标,卸载app等.
二.分析Launcher布局
对于分析陌生的代码,最直观的是先查看它的布局. 我们打开模拟器,我用的是Genymation.
把eclipse的Launcher源码导出apk, 右键项目Launcher点AndroidTools的Export Signed Application Package选项就可以导出了,然后Push到模拟器的system/priv-app目录下即可.
然后点击设置里的所有app,找到Launcher,清除数据就可以看到Launcher4.4的原生桌面了.
Launcher里的布局很多是自定义的,无法通过eclipse上预览出来,这时候就要用到一个工具了,hierarchyviewer.bat,在sdk\tools目录下,双击运行.
然后双击黑色的部分,就会出现下图所示
这里面就是整个Launcher的布局结构.
为了能让大家更直白的理解,我就再画一张图