正文  UI设计 > Launcher >

Android 通过分析Laucher源码整理添加快捷方式的思路

在实际开发中,实际上有很多功能或者设计我们都可以借鉴一下安卓源码, 在我写的这个Laucher系列里,就关于分析Laucher源码来开发桌面快捷方式的思路我大概整理了一下. 希望大家看了之后再遇到类似的情况不是上......

在实际开发中,实际上有很多功能或者设计我们都可以借鉴一下安卓源码, 在我写的这个Laucher系列里,就关于分析Laucher源码来开发桌面快捷方式的思路我大概整理了一下. 希望大家看了之后再遇到类似的情况不是上来直接借用别人的代码,而是能够借助别人的代码或者系统源码分析原理,这样才能真正学到东西. 最关键的是,开发中我们往往会遇到一些特定的问题,这些是别人的代码无法帮你直接解决的. 只要我们懂得原理,很多问题就可以迎刃而解.

具体分析如下:

1. 关于源码中添加桌面快捷方式的UML时序图(Sequence Diagram)分析,我使用的是StartUml:

2. 有兴趣的朋友可以直接根据上图对照源码整理系统应用Laucher添加ShortCut的流程

在此我就不详细描述

需要我们去实现的部分是:

上图中的第二步和第四步.

其中第二步的 checkIntentFilter(String SHORTCUT_NAME)

需要我们在AndroidManifest文件中添加intentfilter 和对应的权限(注意,此处的权限是安卓系统应用自定义的权限,以com.android开头)

第七步completeAddShortCut()

需要我们调用目标Activity,在onCreate()方法中进行实现: 设置快捷方式的图标,名字,意图,创建关联关系等等