2 pipi0 PIPI0 于 2016.01.24 07:16 提问

请问在服务中是否无法关闭服务呢???
public class MyService extends Service {

    private MyReceiver receiver;


    private class MyReceiver extends BroadcastReceiver {
        public void onReceive(Context context, Intent intent) {
            onDestroy();
        }
    }  

    public void onCreate() {
        super.onCreate();
        Toast.makeText(MyService.this, "服务已启动", Toast.LENGTH_SHORT).show();
    }

    public int onStartCommand(Intent intent, int flags, int startId) {
        receiver=new MyReceiver();
        IntentFilter filter=new IntentFilter();
        filter.addAction("net.s5c.Changelink.wifiOff");
        registerReceiver(receiver, filter);
        flags=START_STICKY;
        return super.onStartCommand(intent, flags, startId);
    }



 public void onDestroy() {
        Toast.makeText(this, "服务已关闭", Toast.LENGTH_LONG).show();//可以打印出这句,但看后台还是无法关闭服务!
        super.onDestroy();
    }

    public IBinder onBind(Intent intent) {
        return null;
    }

}

收到广播后能看到输出的onDestroy()的内容,但看正在运行中服务还是继续运行着,这是怎么回事呢?

2个回答

PIPI0
PIPI0   2016.01.24 22:15
已采纳

没有任何作用看了半天也没找到我需要的!

devmiao
devmiao   Ds   Rxr 2016.01.24 07:24
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
SVN服务的启动与关闭[linux]
ps -A 只列出所有进程,并不显示环境变量。ps -ef 列出所有进程,并显示环境变量,而且显示全格式。关闭查到服务的进程号:ps -A | grep svn1597 ?        00:00:00 svnserve关闭进程:kill 1597启动启动服务:(默认启动开启 3690端口)svnserve -d -r  /home/beijing/soft/svn设置端口:svnserv...
windows services 强制关闭方法
winservice 在 starting、stopping 阶段,无法手动关闭服务。 解决思路: 1. sc queryex [service name] 查找服务PID 2. taskkill /PID [PID] /F /T 强制关闭进程
大神们,linux的telnet服务突然打不开了怎么办
我在telnet到linux上的时候报不能打开到主机的连接, 在端口23: 连接失败 请问是什么原因 http://bbs.csdn.net/topics/80250771 同志啊,防火墙。 防火墙会配就配上,不会就关了。 默认是不让连的 大侠 请指点如何关闭防火墙 是linux自带的吧 哈哈果然是防火墙的问题搞定了 谢谢大家了 不是防火墙问题,还是telnet服务问题,
【DB】Oracle 打开/关闭服务DOS命令
Oracle 打开/关闭服务DOS命令
Red Hat 服务详解
Red Hat 服务详解,详细描述Red Hat中各项服务的功能。为使用提供是否需要关闭的建议。
禁止用户在任务管理器中停止服务
void WINAPI Service_Main(DWORD dwArgc, LPTSTR *lpszArgv) { DebugMessage(_T("this is function Service_Main")); ssStatus.dwServiceType = SERVICE_WIN32; ssStatus.dwCurrentState = SERVI
无法激活服务,WCF设置ASP.NET 兼容性
无法激活服务,WCF设置ASP.NET 兼容性 bugWebASP.NET,WCF1 Comment发表评论 错误起源: 通过 System.Web.HttpContext.Current.Server.MapPath(“~/config/{0}.config”) 取路径时报错,HttpContext = null 检查过后结果是WCF默认不支持ASP.NET兼容模式导致
恢复到WINXP系统初装状态服务启动项
恢复到初始启动状态的服务启动项,使一些无法分辨是否会影响系统正常运行的服务项 分辨出来并关闭 释放内存
早上起来发现openstack中nova服务全部关掉了
[root@controller ~]# source admin-openrc.sh [root@controller ~]# nova service-list +----+------------------+------------+----------+---------+-------+----------------------------+-----------------+ |
C++ 停止并禁用服务
BOOL StopService() { SC_HANDLE scm; SC_HANDLE service; if((scm=OpenSCManager(NULL,NULL,SC_MANAGER_ALL_ACCESS))==NULL) { CloseServiceHandle(scm); return 0; } service=OpenService(scm, "ShellHW