Android 如何在服务被破坏时关闭服务中的后台线程

Android 如何在服务被破坏时关闭服务中的后台线程,android,android-service,java-threads,Android,Android Service,Java Threads,我想在ondestory方法中关闭服务中的后台线程,因为如果我停止服务,后台线程仍在运行。因为thread.stop()已被弃用,我真的不知道该怎么做 @Override public int onStartCommand(Intent intent, int flags, int startId) { runAsForeground(); Runnable service = new Runnable() { @Override public

我想在
ondestory
方法中关闭服务中的后台线程,因为如果我停止服务,后台线程仍在运行。因为
thread.stop()
已被弃用,我真的不知道该怎么做

@Override
public int onStartCommand(Intent intent, int flags, int startId)
{
    runAsForeground();

    Runnable service = new Runnable() {
        @Override
        public void run() {


            connect(client,options);

        }
    };

    backgroundThread = new Thread(service);
    backgroundThread.start();
    Log.i(TAG, "onStartCommand methode called");

    return Service.START_NOT_STICKY;
}

我想您正在使用
服务
。然后,您可以使用与您可以使用的
Context.stopService(intent)
相同的方法
Context.startService(intent)

stopService(new Intent(this, YourService.class));

它将停止此服务,其所有
线程
线程生命周期与Android上下文组件生命周期不同。停止服务不足以停止服务创建的线程。这是一种选择不过,您应该捕获中断异常。如果还不够,您可以检查
connect()
方法中的服务是否未停止。

显示您的连接方法。