Android编程新手。 您能告诉我如何将视图作为参数传递吗?
public class MainActivity extends ActionBarActivity {
...
public void stopService(View view) {
stopService(new Intent(getBaseContext(), MyService.class));
}
}
public class MySmsReceiver extends BroadcastReceiver {
...
MainActivity obj = new MainActivity();
obj.stopService();
}
我已正确编码MyService.java。
谢谢
答案 0 :(得分:2)
首先,您必须从onStop()中的上一个活动解除绑定服务。否则你可能会遇到窗口泄露异常。
放置代码以停止应用程序类中的服务。
public class AppController extends Application {
private static AppController mInstance;
public static synchronized AppController getInstance() {
return mInstance;
}
.........
public void stopService(View view) {
stopService(new Intent(getBaseContext(), MyService.class));
}
}
然后,您可以从任何类中获取Application对象,并且您将能够从任何活动中停止该服务,但在此之前,您必须从onStop()
中的其他活动解除该服务的绑定。
要从任何地方停止服务,请致电:
AppController.getInstance().stopService();