Подтвердить что ты не робот

Как получить контекст приложения из широковещательного приемника?

У меня есть расширение класса Application, которое мне нужно получить ссылку в создаваемом BroadcastReceiver. Контекст, переданный в "onReceive", является ограниченным контекстом. Есть ли способ получить ссылку на фактический контекст приложения?

4b9b3361

Ответ 1

Вызовите getApplicationContext() в Context, предоставленном вам в onReceive(), так же, как вы бы набрали getApplicationContext() на Activity.

У меня есть расширение приложения, которое позволяет мне не статически получать ссылку на несколько объектов, которые мне нужны.

Хотя синтаксически Application не является статическим, он оказывает такое же влияние, особенно в отношении утечек памяти.

Ответ 2

BroadcastReceiver уже дает контекст. Посмотрите на onReceive.

public void onReceive(Context context, Intent intent)