繁体   English   中英

从最近的应用程序中删除应用程序后继续服务

[英]continuing service after app is removed from recent apps

我正在运行 android 7.0。 我创建了一个在 10 秒后显示吐司的服务。 即使我在最近的应用程序列表上向右滑动,我也希望它显示吐司。

这是我的服务的代码:

public class DelayedMessageService extends IntentService{

    public static final String EXTRA_MESSAGE = "message";
    private Handler handler;

    public DelayedMessageService(){
        super("DelayedMessageService");
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId){
        handler = new Handler();
        return super.onStartCommand(intent, flags, startId);
    }

    @Override
    protected void onHandleIntent(Intent intent) {
        synchronized (this){
            try{
                wait(10000);
            }catch (InterruptedException e){
                e.printStackTrace();
            }
        }
        String text = intent.getStringExtra(EXTRA_MESSAGE);
        showText(text);
    }


    private void showText(final String text){
        handler.post(new Runnable() {
            @Override
            public void run() {
                Toast.makeText(getApplicationContext(), text, Toast.LENGTH_SHORT).show();
            }
        });
    }
}

即使我从最近的应用程序列表中删除它,我如何让它显示 Toast。

提前致谢!

您必须在MainActivity类中实现onDestroy方法。 然后停止你的服务。

@Override
public void onDestroy() {
    Intent myService = new Intent(MainActivity.this, DelayedMessageService.class);
    stopService(myService);
}

希望能帮助到你。

当应用程序未处于活动状态时,您无法显示吐司,也许您应该尝试执行一些其他操作,例如通知。 它需要您的应用程序正在运行才能显示。 而且你不能在你的服务中举杯。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM