1.概述
在10.0定制化开发中,由于产品开发需要要求系统内置两个Launcher,一个是Launcher3,一个是自己开发的Launcher,当系统启动Launcher时,
不要弹出Launcher选择列表 选择哪个Launcher要求默认选择自己开发的Launcher作为默认Launcher,关于选择Launcher列表
其实都是在ResolverActivity.java中处理的具体看下代码分析解决问题
2.当系统内置两个Launcher时默认设置Launcher3以外的那个Launcher为默认Launcher的核心代码
frameworks\base\core\java\com\android\internal\app\ResolverActivity.java
3.当系统内置两个Launcher时默认设置Launcher3以外的那个Launcher为默认Launcher的功能分析
在framework中,关于系统内置多个同类型的app时,在系统启动时,主要是在ResolverActivity.java来弹出选择启动列表,让用户选择启动
ResolverActivity.java中相关代码分析,在这个类里面主要是让用户选择启动哪个同类型的app,
此类中有一个内部类ResolveListAdapter该类继承自BaseAdapter,该类是Home app选择界面的数据适配器。
ResolveListAdapter会在ResolverActivity的onCreate方法中被初始化并会传入一个ResolveInfo类型的List,ResolveListAdapter根据会传入的List初始化一个List mList ,用户的点击事件都会在ResolveListAdapter获取数据。
用户点击”ALWAYS”的事件发生在ResolverActivity的onBu
来源地址:https://blog.csdn.net/baidu_41666295/article/details/132031663