【问题标题】:What if pendingintent call getService() to start a living background service multiple times如果pendingintent调用getService()多次启动一个活的后台服务怎么办
【发布时间】:2016-12-17 11:21:51
【问题描述】:

如果 PendingIntent 调用 getService() 多次启动后台服务(实时)会怎样? 我的猜测是,除了 onStartCommand(Intent intent, int flags, int startId) 会被多次调用之外,后台服务仍然存在,对吗?

就我而言,我试图调用 requestActivityUpdates() 来检测用户的活动(移动、静止、...)。当检测到活动(调用回调函数)时,此处的示例(https://github.com/googlesamples/android-play-location/tree/master/ActivityRecognition)使用pendingintent 调用intentservice 来提取那些检测到的活动的结果然后广播它。 由于我需要在后台服务中处理这些检测到的活动,我想我可以使用pendingintent 直接启动我的后台服务,而不是调用一个intentservice 并将其广播到我的服务。

【问题讨论】:

    标签: android


    【解决方案1】:

    我的猜测是,除了 onStartCommand(Intent intent, int flags, int startId) 会被多次调用之外,后台服务仍然存在,对吗?

    如果服务仍在运行,onStartCommand() 将在正在运行的实例上调用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-14
      • 2021-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      相关资源
      最近更新 更多