我正在制作一个汽车启动器应用程序,其中包含其他应用程序的快捷方式,当我在另一个应用程序中时,我想按下主页按钮并返回我的启动器所以基本上我需要覆盖我的应用程序之外的主页按钮,覆盖只有在我的应用程序在后台打开时才起作用,所以当我关闭我的应用程序时,主页按钮将照常工作,带您进入默认启动器
我可以实施这样的事情还是我要求太多?
除非您将应用程序设为主屏幕,否则无法拦截 Android 上的主页按钮。这是出于安全原因,因此恶意应用程序无法通过覆盖所有可以退出的按钮来接管您的设备。主页按钮是能够离开任何应用程序的一种可靠方式。
简而言之,不,这是不可能的,即使是这样,它也会严重破坏用户对应用程序行为的期望。
如果您将应用程序作为替代主屏幕,则必须在安装说明中包含用户以将您的应用程序设置为默认启动器。
然后主页按钮会将它们带到您的应用程序。为了让它在它们不处于“汽车”模式时切换回默认启动器会有点棘手,但你可以通过某种检查是否启用汽车模式的 fork 活动来实现它,如果是这样去你的汽车模式启动器,如果不转到默认启动器(如果用户已经有不同的 3rd 方启动器,它会变得更棘手)所以基本上你的应用程序将永远是主屏幕应用程序,无论是否启用了汽车模式,但如果它是不是那么您手动启动“正常”主屏幕。