我有一个主要活动(MyMainAvtivity),它将启动一个前台服务(MyForegroundService),该服务注册一个广播接收器(MyUserPresentReceiver),并设置一个警报(MyAlarmBroadcastReceiver)。
MyMainActivity
!
+-- MyForegroundService
!
+-- MyUserPresentReceiver
!
+-- MyAlarmBroadcastReceiver
警报响起时,MyAlarmBroadcastReceiver需要停止MyForegroundService。
我可以编码
context.stopService(intent);
哪个当然不执行任何操作,因为上下文来自MyUserPresentReceiver。
我可以编码
context.getApplicationContext().stopService(intent);
这也不起作用(我认为getApplicationContext()将MyForegroundService作为“当前进程的全局应用程序对象”提供,但没有)。
如何在MyAlarmBroadcastReceiver中获取MyForegroundService的上下文?
由于我们看不到代码,因此我只能提出建议。
context.stopService(new Intent(context, Service.class));
你可以试试。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句