gpt4 book ai didi

android - android应用程序关闭时如何停止服务

转载 作者:行者123 更新时间:2023-11-30 01:26:26 28 4
gpt4 key购买 nike

我正在开发一个应用程序,我需要每 15 分钟更新一次我的值。为此,我正在使用服务。我遇到了不同类型的服务。对于长期运行的服务,我们使用简单的服务, 为了与我们使用绑定(bind)服务的其他组件进行交互, 前台服务。等等……

我的情况是我需要每 15 分钟运行一次服务当我的应用程序打开时停止服务,当我的应用程序关闭时停止服务

我尝试使用绑定(bind)服务 http://www.truiton.com/2014/11/bound-service-example-android/但我无法做到这一点,我无法每 15 分钟运行一次该服务,任何人都可以帮助我。提前致谢。

最佳答案

要在您的应用程序启动时启动服务,请在 onCreate() 方法中启动它:

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = new Intent(MainActivity.this, MyService.class);
startService(intent);

}

要停止服务,您可以在 3 种不同的方法中实现代码,即 onPause()、onStop() 和 onDestroy()。

在 onPause() 中调用 stopService() 将在您的设备上发生某些其他事件(如电话)时立即停止服务,这不是停止的最佳方式,因为用户将立即返回到 Activity通话结束。

在 onDestroy() 中调用 stopService() 也不是最好的解决方案,因为在用户关闭 Android 应用程序的所有方式中都不会调用 onDestroy。

因此,停止服务的最佳方式是在 onStop() 方法中调用 stopService() ,如下所示。

@Override
protected void onStop() {
super.onStop();
Intent intent = new Intent(MainActivity.this, MyService.class);
stopService(intent);
}

关于android - android应用程序关闭时如何停止服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36369845/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com