Android-получение контекста из широковещательного приемника onReceive() для отправки



Я в основном хочу сделать намерение и передать его службе из onReceive () моего BroadcastReceiver.



до сих пор я всегда использовал вид.getContext (), но здесь я застрял.
Как именно я могу получить контекст, чтобы я мог использовать public Intent (Context packageContext, Class<?> cls)?

569   3  

3 ответов:

public abstract void onReceive (Context context, Intent intent)

onReceive дает вам контекст. Чего еще ты хочешь?

Ну ответ, упомянутый выше, не имеет никакого смысла. Вы можете использовать контекст, пока вы находитесь в onReceive. после того, как Код вернулся из onReceive, контекст больше не существует.

Итак, в вашем заявлении о проблеме говорится, что вы хотите запустить службу, используя этот контекст в своем намеренном создании, а затем вызвать startService с этим объектом контекста. Это невозможно сделать.

прочитайте это, что может и не может быть сделано в BroadcastReceiver контекст.

http://developer.android.com/reference/android/content/BroadcastReceiver.html

В BroadcastReceiver

onReceive(Context context, Intent intent)

метод предоставляет контекст

так

для начала работы используйте

context.startActivity(intent);

а для запуска сервиса используйте

context.startService(intent);

Comments

    Ничего не найдено.