由于定制的原因,不同手机的launcher包名不一样
【获取当前android系统的launcher包名】 比如:
miui: com.miui.home
huawei: com.huawei.android.launcher
moto and htc: com.android.launcher
samsung: com.sec.android.app.launcher
但是android手机类型数量太多,不同手机的launcher都不相同,下面的代码是获取当前运行的系统的launcher包名
public String getLauncherPackageName(Context context)
{
final Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
final ResolveInfo res = context.getPackageManager().resolveActivity(intent, 0);
if(res.activityInfo == null)
{
return "";
}
//如果是不同桌面主题,可能会出现某些问题,这部分暂未处理
if(res.activityInfo.packageName.equals("android"))
{
return "";
}else
{
return res.activityInfo.packageName;
}
}