首页 > 解决方案 > 获取调用上下文的父上下文

问题描述

我有一个主要活动(MyMainAvtivity),它启动一个前台服务(MyForegroundService),它注册一个广播接收器(MyUserPresentReceiver),它设置一个警报(MyAlarmBroadcastReceiver)。

MyMainActivity
!
+-- MyForegroundService
    !
    +-- MyUserPresentReceiver
        !
        +-- MyAlarmBroadcastReceiver

当闹钟响起时,MyAlarmBroadcastReceiver 需要停止 MyForegroundService。

我可以编码

context.stopService(intent);

这当然什么都不做,因为上下文来自 MyUserPresentReceiver。

我可以编码

context.getApplicationContext().stopService(intent);

它也什么都不做(我认为 getApplicationContext() 将 MyForegroundService 作为“当前进程的全局应用程序对象”提供,但没有)。

如何在 MyAlarmBroadcastReceiver 中获取 MyForegroundService 的上下文?

标签: android

解决方案


由于我们看不到代码,因此我只能提出建议。

context.stopService(new Intent(context, Service.class));

你可以试试。


推荐阅读