【问题标题】:USER_PRESENT intent reasonUSER_PRESENT 意图原因
【发布时间】:2016-06-27 09:13:48
【问题描述】:

我正在构建一个相机应用程序,我也想利用某些设备上的硬件快门。当应用程序已经启动时,按下硬件按钮可以正确拍摄照片(使用 android.intent.action.CAMERA_BUTTON)。当我查看主屏幕时,按下按钮也会正确启动应用程序。我的问题是关于锁定屏幕的。如果在锁定屏幕处于活动状态的情况下按下按钮,我有什么方法可以启动应用程序?我没有设置密码,因此在锁定屏幕处于活动状态时按下按钮只会解锁设备。我的感觉是它应该由 android.intent.action.USER_PRESENT 解决,但它会在每次设备以任何方式解锁时触发。我可以以某种方式检测是否是触发 USER_PRESENT 广播的相机按钮?或者任何其他方式可以做到吗?

谢谢

【问题讨论】:

    标签: android android-intent camera


    【解决方案1】:

    让我们探索一下屏幕变黑的各种方式。

    1. 用户有意或无意按下了电源按钮(想想 对接拨号)
    2. 一个应用程序决定取消空白屏幕,例如: 电话应用程序,它会为来电取消屏幕空白 消息传递应用程序,例如 GoSMS,它会在收到消息时取消屏幕显示 消息到达任何其他应用都可以这样做

    所有这些都会触发 USER_PRESENT Intent。所以,答案是否定的——你不能依赖这个意图。

    【讨论】:

    • ye 我知道,我希望有一些隐藏的标志或其他意图来显示导致 USER_PRESENT 广播的原因,但没有找到任何东西。暂时不知道该怎么做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-07
    • 2011-11-19
    • 1970-01-01
    • 1970-01-01
    • 2023-01-22
    • 2014-11-13
    • 2017-04-10
    相关资源
    最近更新 更多