rk修改launcher_RK3288平台Android6.0系统修改默认Launcher

本文介绍了如何在RK3288平台运行的Android6.0系统上修改默认启动器(Launcher)。通过在ResolverActivity中设置默认启动器的相关代码,包括读取和设置系统属性`DEFAULT_HOME`,以及根据指定包名查找启动器位置的方法。在`setupDefaultLauncher()`函数中,首先尝试获取当前默认的启动器,然后找到目标启动器并设置为新的默认启动器。
摘要由CSDN通过智能技术生成

public class ResolverActivity extends Activity {

……//此处省略好多行

private static final String DEFAULT_HOME = "persist.sys.default.home";

……//此处省略好多行

protected void onCreate(Bundle savedInstanceState, Intent intent,

CharSequence title, int defaultTitleRes, Intent[] initialIntents,

ListrList, boolean alwaysUseOption) {

setTheme(R.style.Theme_DeviceDefault_Resolver);

super.onCreate(savedInstanceState);

……//此处省略好多行

setupDefaultLauncher(); //封装一个设置默认桌面的函数

……//此处省略好多行

}

……//此处省略好多行

private void setupDefaultLauncher() {

String first = "";

try{

first = SystemProperties.get(DEFAULT_HOME);

}catch(Exception e){

Log.w(TAG,"exception error get DEFAULT_HOME");

}

int position = mAdapter.getDefaultHomePosition("com.XXX.home");//在此处获取指定包名的Launcher的位置,mAdapter是ResolveListAdapter的引用

if (position == -1) {

if (DEBUG)

Log.w(TAG,"not find default Home");

return;

}

ResolveInfo ri = mAdapter.resolveInfoForPosition(position, true);

TargetInfo intent = mAdapter.targetInfoForPosition(position, true);

onTargetSelected(intent, false);

try{

SystemProperties.set(DEFAULT_HOME,DEFAULT_HOME);

}catch(Exception e){

Log.w(TAG,"exception error set DEFAULT_HOME");

}

startSelected(position, true, true);

dismiss();

}

public int getDefaultHomePosition(String packageName){

for (int i = 0; i < mDisplayList.size(); i++) {

ResolveInfo info = mDisplayList.get(i).mResolveInfo;

if (DEBUG)

Log.w(TAG,"getDefaultHomePosition " + info.activityInfo.packageName);

if (info.activityInfo.packageName.equals(packageName)) {

return i;

}

}

return -1;

}

……//此处省略好多行

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值