问题描述:手表使用自定义launch桌面启动器时无法监听到物理按键(关机键、返回键),需要返回手表原launch桌面启动器才能关机,故需要进行桌面切换。
方案1:
val intent = Intent(Intent.ACTION_MAIN).apply {
addCategory(Intent.CATEGORY_HOME)
flags = Intent.FLAG_ACTIVITY_NEW_TASK
}
val chooser = Intent.createChooser(intent, "选择默认桌面应用")
startActivity(chooser)
方案2:
通过PackageManager获取原launch桌面启动器包名等相关信息,使用ComponentName这种方式打开。此方法需要根据具体设备去获取,自行判断。
总结:
方案1通用,方案2繁琐且需要设备给予权限获取。