【问题标题】:Is there an onBackPressed() alternative for a service?是否有 onBackPressed() 替代服务?
【发布时间】:2013-08-09 04:31:01
【问题描述】:

我知道服务无法实现后退键,并且我理解其中的原因。但是有一个名为 SideBar(在 Play 商店中)的 app 可以对后退按键做出反应。它是一种将视图添加为系统覆盖并在按下后退键时删除视图的服务。谁能解释一下这是怎么做到的?

这是另一个做得很好的app。我搜索了网络,但没有找到解决这个问题的方法。有什么想法吗?

【问题讨论】:

  • 你找到解决这个问题的方法了吗?我也面临着类似的情况。

标签: android service back


【解决方案1】:

这可能是使用system alert windows 完成的 - 因此该服务创建并管理一个添加到窗口管理器的窗口,该窗口管理器上设置了一个自定义callback

【讨论】:

  • 您能详细说明一下吗?如何拦截服务中的按键事件并传递给window或windowManager?
  • 你有什么例子吗?
【解决方案2】:

here 是在服务中添加视图的好例子,如果你想在服务中使用监听器,你也可以使用。

我也在寻找服务中的监听器实现,终于找到了。

记得添加权限

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>

并添加您的服务类

<application>
.
 .
  <service android:name=".YourServiceClass"></service>
 .
.
</application>

在 AndroidManifest.xml 中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-09-29
    • 2020-01-04
    • 1970-01-01
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    • 2011-06-20
    • 1970-01-01
    相关资源
    最近更新 更多