如何在调用服务的 destroy() 后调用另一个 activity

How to call another activity after destroy() of service is called

在这段代码中,我创建了一个 service.After 3 秒我想销毁此服务并想在销毁中调用另一个 activity method.but 这似乎不起作用。

public class TimerService extends Service 
{
    @Override
    public IBinder onBind(Intent intent)
    {
        return null;
    }

    @Override
    public void onCreate()
    {
        super.onCreate();
    }

    @Override
    public int onStartCommand(Intent intent,int flags,int startId)
    {      
        new CountDownTimer(3000, 1000) 
        { 
            public void onTick(long millisUntilFinished)
            {

            }
            public void onFinish()
            {

                stopSelf();
            }
        }.start();

        return super.onStartCommand(intent,flags,startId);
    }

    @Override
    public void onDestroy()
    {
        super.onDestroy();
        Intent i = new Intent(this,Dummy.class);
        i.putExtra("SessionTimedOut","Expire");
        i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        getApplication().startActivity(i);

    }
}

Activity 调用我的服务

public class MainActivity extends Activity 
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Intent i = new Intent(this,TimerService.class);
        startService(i);
    }
}

尝试将代码插入到finish方法中:

 @Override
public int onStartCommand(Intent intent,int flags,int startId)
{      
    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            Intent i = new Intent(this,Dummy.class);
            i.putExtra("SessionTimedOut","Expire");
            i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            startActivity(i);
            stopSelf();
        }
    }, 3000);

    return super.onStartCommand(intent,flags,startId);
}