У меня есть расширение класса Application, которое мне нужно получить ссылку в создаваемом BroadcastReceiver. Контекст, переданный в "onReceive", является ограниченным контекстом. Есть ли способ получить ссылку на фактический контекст приложения?
Как получить контекст приложения из широковещательного приемника?
Ответ 1
Вызовите getApplicationContext()
в Context
, предоставленном вам в onReceive()
, так же, как вы бы набрали getApplicationContext()
на Activity
.
У меня есть расширение приложения, которое позволяет мне не статически получать ссылку на несколько объектов, которые мне нужны.
Хотя синтаксически Application
не является статическим, он оказывает такое же влияние, особенно в отношении утечек памяти.
Ответ 2
BroadcastReceiver уже дает контекст. Посмотрите на onReceive.
public void onReceive(Context context, Intent intent)