当前位置:   article > 正文

android 启动界面位置,android 修改默认启动项launcher(一)

android12 默认启动项

需求:不去掉系统自带launcher的前提下,默认启动指定应用作为launcher

现象:应用中带有属性"android.intent.category.HOME",开机会弹出选择界面

思路:跳过选择界面,直接选中要启动的launcher并直接进入

1.选择界面流程分析

使用adb命令抓取到launcher选择提示框是一个activity,路径是frameworks/base/core/java/com/android/internal/app/ResolverActivity.java

此Activity会获取系统中所有的Home app,并根据系统的设置情况显示如上界面。此类中有一个内部类ResolveListAdapter该类继承自BaseAdapter,该类是Home app选择界面的数据适配器。

ResolveListAdapter会在ResolverActivity的onCreate方法中被初始化并会传入一个ResolveInfo类型的List,ResolveListAdapter根据会传入的List初始化一个List mList ,用户的点击事件都会在ResolveListAdapter获取数据。

用户点击”ALWAYS”的事件发生在ResolverActivity的onButtonClick 方法中,此方法会获取选中的Item的position、或者获取用户上一次启动的Home app的,mAlwaysUseOption代表用户选中的是否为历史选择,并调用startSelected。

onButtonClick()方法

public void onButtonClick(View v) {

final int id = v.getId();

startSe

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/377067?site
推荐阅读
相关标签
  

闽ICP备14008679号