【问题标题】:How to call onUserLeaveHint when the system navigation are by gestures?系统导航是手势时如何调用onUserLeaveHint?
【发布时间】:2020-11-20 20:35:06
【问题描述】:

此时我正在为 android 实现画中画功能,正如文档所说,当用户使用 onUserLeaveHint() 方法通过主页按钮离开应用程序时,我们应该进入画中画模式,它按预期工作在具有物理按钮的设备中,但是当手机没有并且像 iPhone 这样使用手势时,不会调用 onUserLeaveHint 方法,那么有没有办法捕捉或模拟这种行为?

【问题讨论】:

    标签: java android kotlin mobile picture-in-picture


    【解决方案1】:

    onUserLeaveHint() 不是检测“主页”按钮点击的可靠 Android 生命周期回调。尽管官方文档规定你可以用它来检测“当用户按下 Home 键时”,我发现这是错误的。

    例如,onUserLeaveHint() 可能会在提示 Android 原生对话框时调用,或者在您启动另一个 Activity 时调用。 另外,对于您提到的示例,我还发现当启用手势导航(Android 11 及更高版本)并且用户转到“Recents”然后存在应用程序 - onUserLeaveHint() 将不会被调用。

    不幸的是,直到今天我还没有找到任何密封的方法来检测 Android 中的“主页”按钮点击。我猜操作系统设计者不希望应用开发者轻易发现这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-22
      • 1970-01-01
      • 2020-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-13
      相关资源
      最近更新 更多