Android 如何从活动中关闭服务?
我正在尝试制作一个只有一个活动的应用程序,当你按下一个按钮时,应用程序将关闭,但服务仍保留在后台。但是,我想在OnCreateOptions菜单中有一个名为“关闭应用程序”的选项按钮,这样当你点击它时,活动就完成了;服务被终止。问题是我知道如何关闭活动,但不知道如何从活动中终止服务。以下是我的部分代码,为了简单起见,我省略了两个基本方法:Android 如何从活动中关闭服务?,android,android-activity,service,Android,Android Activity,Service,我正在尝试制作一个只有一个活动的应用程序,当你按下一个按钮时,应用程序将关闭,但服务仍保留在后台。但是,我想在OnCreateOptions菜单中有一个名为“关闭应用程序”的选项按钮,这样当你点击它时,活动就完成了;服务被终止。问题是我知道如何关闭活动,但不知道如何从活动中终止服务。以下是我的部分代码,为了简单起见,我省略了两个基本方法: protected void onCreate(Bundle savedInstanceState) { super.onCreate(sav
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bDone.setOnClickListener(this);
}
public void Onclick(){
Intent serv = new Intent(Main.this, Bground.class);
startService(serv);
finish();
}
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.closeApp) {
finish();
}
return super.onOptionsItemSelected(item);
}
我试着把意图放在服务上;作为全局变量并写入stopServiceserv;就在终点之上;在OnOptionItemSeected中,但它给了我一个错误
谢谢 在你的桌面上尝试解除绑定服务。我最终用这种方式解决了这个问题
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.closeApp) {
stopService(new Intent(Main.this, Bground.class));
finish();
}
只需添加stopservicenewintentmain.this、Bground.class
感谢这篇文章:使用“serv”作为参数或不使用参数:ContextWrapper类型中的方法UnbindServiceConnection不适用于参数意图。请看这个示例:什么类型的错误?堆栈后跟踪。