我正在Android Froyo系统上开发应用程序,一切都很好,除了当我创建服务时,服务会产生多个线程。在其中一个线程中,我想停止服务。 显然,stopService()超出了线程类的范围,getApplicationContext()调用也是如此。 因此,在一个线程中,我可以获取当前的上下文吗?无法在线程内调用getApplicationContext()
感谢
我正在Android Froyo系统上开发应用程序,一切都很好,除了当我创建服务时,服务会产生多个线程。在其中一个线程中,我想停止服务。 显然,stopService()超出了线程类的范围,getApplicationContext()调用也是如此。 因此,在一个线程中,我可以获取当前的上下文吗?无法在线程内调用getApplicationContext()
感谢
声明自己的背景
private Context mContext;
和使用insted的的getApplicationContext()
您可以尝试MyService.this.stopSelf()。或者如果这不起作用,则可以在创建服务时存储对服务的引用。在你的创建中,你可以做Context ctx = this。然后在你的线程ctx.stopSelf()
你几乎从不需要'getApplicationContext()'。 'Activity'和'Service'都是'Context'的子类。 – CommonsWare 2010-08-13 19:38:22