启动和停止服务

时间:2010-08-14 04:35:20

标签: android service

我有一个正在运行的服务(Socket),这就是我启动服务的方式。

Intent s = new Intent(this, Socket.class);
startService(s);

在每个活动中,我检查用户选择主页按钮,单击主页按钮后我需要销毁套接字,所以我的应用程序中的每个活动都有以下代码:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{       
    if (keyCode == KeyEvent.KEYCODE_HOME)
    {
        Intent s = new Intent(this, Socket.class);
        stopService(s);
    }   
    return true;
}

但是这似乎没有停止我的服务?
我错过了什么吗?单击主页按钮后,我需要立即销毁我的服务。

1 个答案:

答案 0 :(得分:1)

而不是连接到按键事件等,或许使用onPause,onStart,onDestroy等内置事件更适合您的需求?

StackOVF上的另一个问题最近得到了一个精彩的回复,其中有一个流程图可以帮助您找出启动/停止您正在使用的任何其他内容的位置:

http://developer.android.com/images/activity_lifecycle.png

在单一主题中对于在本主题中发布的信息:

App crashes after receving phone call