使用Intent标志启动活动在启动后停止服务

时间:2015-06-12 04:56:42

标签: java android android-intent android-activity android-service

在我的应用中,有一项活动通过

意图导致另一项活动
Intent intent = new Intent(MainActivity.this, OtherClass.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startService(new Intent(MainActivity.this, Service.class));
startActivity(intent);

问题是在intent上设置的标志使得在服务类中调用onStartCommand()函数之后,onDestroy()函数在同一服务类中运行。我需要在intent上设置标志,以便用户无法返回MainActivity。有没有人知道如何在不停止服务的情况下实现这种效果?

2 个答案:

答案 0 :(得分:0)

尝试在其他进程中运行该服务。

在清单

中添加此内容
<service
            android:name=".MyService"
            android:enabled="true"
            android:process=":my_process" />

答案 1 :(得分:0)

我最终调用了finish(),当启动意图时使用它,达到了预期的效果。