
这儿以Android2.3的模拟器分析添加shortcut有关的源码,要添加shortcut,一般是摁menu键选择Add或长摁主屏幕,弹出菜单选择相应的shortcut,如下:


关于获取Android的源码和将源码导入到eclipse中,可以参看我前面的文章,首先找到Launcher的源码,在<源码目录>\packages\apps\Launcher2下。
1、从manifest文件中可以知道主屏幕就是Launcher.java这个activity,可以看下其布局文件,找到onOptionsItemSelected()方法,跟下去在onCreateDialog()方法中
2、这个dialog样式的activity经常可以碰到,比如有时你点击一个链接,如果你装了多个浏览器,就会弹出这个activity让你选择哪个浏览器。其实就是ActivityPicker.java这个类。
跟踪其onCreate()方法:
3、点击这个picker中ApiDemos,触发onclick(),会带着指向有Intent.ACTION_CREATE_SHORTCUT的activity的Intent返回到Launcher.java中。在onActivityResult()方法中跟下去: