Android 应用程序生命周期和服务

5

这可能不是一个非常复杂的问题,但首先,我不知道应该搜索什么搜索查询?!

在我的应用程序开始时,我想启动GPS,如果我的应用程序结束了,GPS应该关闭。

如何检查整个应用程序(而不是活动)是否已完成?

使用 onDestroy-Method 对于永远不会通过 finish() 关闭的 Start-Activity 是否足够?

非常感谢,对于初学者的问题表示抱歉。

Mur

更新

我看到第一个答案,我想说一次。

我不是指一个 ACTIVITY,我真正意思是整个 APPLICATION(其中存在许多活动)。

如何检查所有应用程序的活动是否已完成,并仅在这种情况下停止服务?

有这样的可能性吗?

更新2:

我在设备上测试了我的解决方案:

"对于永远不会通过 finish() 关闭的 Start-Activity,使用 onDestroy-Method 是否足够?"

是的,这就足够了。

2个回答

7

让每个Activity都通过bindService与Service绑定。当所有的Activity都被终止(隐式解除绑定)后,你的Service也会消失。因为只要有人与其绑定,Service就会一直保持活动状态。


0
在这种情况下,你需要做的是:
  • 创建一个Activity来向用户显示信息。
  • 创建一个Service,它将在后台运行并将更新发送到Activity
有很多关于你正在尝试做的事情的例子,但基本上你可以在ActivityonStart()方法中启动Service,并在onDestroy()中结束服务。

我不是指一个ACTIVITY,而是整个应用程序(其中存在许多活动)。如何检查是否完成了所有应用程序的活动,并且只有在这种情况下停止服务?有可能吗? - Tima
@Mur Votema:好的,那你愿意按照st0le说的去做。 - Macarse

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接