Страница 1 из 1

Урок 96. Service. Обратная связь с помощью BroadcastReceiver

Добавлено: 15 июл 2012, 23:00
damager82
В этом уроке:
- получаем из сервиса результат с помощью BroadcastReceiver


Click here to read this article!

Re: Урок 96. Service. Обратная связь с помощью BroadcastRece

Добавлено: 18 фев 2013, 16:24
kievkao
Интересно, а к каким последствиям может привести решение не отключать BroadcastReceiver, например, при завершении работы приложения?

Re: Урок 96. Service. Обратная связь с помощью BroadcastRece

Добавлено: 02 апр 2014, 10:59
Stylish2011
А каким способом можно остановить одну из задач, чтобы при этом остальные продолжали работать?

Re: Урок 96. Service. Обратная связь с помощью BroadcastRece

Добавлено: 04 апр 2014, 15:36
Gabber_WB
Здраствуйте...
Почитал, вот Я про сервисы... всё хорошо, весьма понятно...
Есть одно упущение... нет описания "полюсоминосов" того или иного подхода...
то есть например чем отличается 95-й и 96-й уроки, ну кроме "метода разная". :)

А сам как только не извращался... мне надо было в сервисе управлять активностью(если есть), а в активности сервисом...
Вот даже о передаче в сервис ссылки на активность, а в активность ссылки на сервис додумался. Просто печёнкой чую, что такая метода почему-то не верна, а почему х.з.

так что просьба к автору описывать "чем грозит та или иная метода"
т.е. например, думаю, что броадкаст ресивер хорош
- универсальностью
- простатой реализации
плох(как мне кажется):
- быстродействие.

выше написанное - это Я так предполагаю, а как на самом деле - не знаю.

ну и возможно примеры(ну просто на словах, не обязательны сотни строк кода) где та или иная метода наиболее выгодно используется.

Re: Урок 96. Service. Обратная связь с помощью BroadcastRece

Добавлено: 07 ноя 2014, 08:02
Razor
Gabber_WB писал(а):Здраствуйте...
Почитал, вот Я про сервисы... всё хорошо, весьма понятно...
Есть одно упущение... нет описания "полюсоминосов" того или иного подхода...
то есть например чем отличается 95-й и 96-й уроки, ну кроме "метода разная". :)
...
ну и возможно примеры(ну просто на словах, не обязательны сотни строк кода) где та или иная метода наиболее выгодно используется.
Тоже интересует информация на эту тему.

Re: Урок 96. Service. Обратная связь с помощью BroadcastRece

Добавлено: 16 янв 2015, 11:08
Fry
Есть одно упущение... нет описания "полюсоминосов" того или иного подхода...
то есть например чем отличается 95-й и 96-й уроки, ну кроме "метода разная

Насколько я понимаю, ключевое отличие а между PendingIntent и BroadcastReceiver (уроки 95 и 96 соответственно) в том, что для PendingIntent ответ должен приходить строго в то активити, из которого вызывается вызывается сервис. А в случае с BroadcastReceiver стартовать сервис мы можем из одного активити, а результаты ловить как в нем, так и в любом активити, настроенном на получение этого BroadcastReceiver.

Я прав?

Re: Урок 96. Service. Обратная связь с помощью BroadcastRece

Добавлено: 16 янв 2015, 13:14
KamiSempai
Все верно. PendingIntent полученный при помощи createPendingResult будет присылать ответы только в ту Activity в которой он был создан.

Re: Урок 96. Service. Обратная связь с помощью BroadcastRece

Добавлено: 16 май 2015, 12:14
Эркин
Подскажите как передать
intent = new Intent(this, MyserviceBroad.class).putExtra(PARAM_TIME, 7)
.putExtra(PARAM_TASK, TASK1_CODE).putExtra(PARAM_STR, "12345qwert");
строковую переменную и получить также в строковом формате
Я для передачи вроде прописал а в Broad не могу присвоить переменной

Заранее благодарен

Re: Урок 96. Service. Обратная связь с помощью BroadcastRece

Добавлено: 05 авг 2015, 12:30
K_Vladimir
Эркин писал(а):Подскажите как передать
intent = new Intent(this, MyserviceBroad.class).putExtra(PARAM_TIME, 7)
.putExtra(PARAM_TASK, TASK1_CODE).putExtra(PARAM_STR, "12345qwert");
строковую переменную и получить также в строковом формате
Я для передачи вроде прописал а в Broad не могу присвоить переменной

Заранее благодарен
А так что, не получается?
public Intent putExtra (String name, String value)
public String getStringExtra (String name)
http://developer.android.com/intl/ru/re ... l#putExtra(java.lang.String, java.lang.String)
http://developer.android.com/intl/ru/re ... ng.String)

Re: Урок 96. Service. Обратная связь с помощью BroadcastRece

Добавлено: 23 сен 2015, 19:31
Kirill
Fry писал(а):
Есть одно упущение... нет описания "полюсоминосов" того или иного подхода...
то есть например чем отличается 95-й и 96-й уроки, ну кроме "метода разная

Насколько я понимаю, ключевое отличие а между PendingIntent и BroadcastReceiver (уроки 95 и 96 соответственно) в том, что для PendingIntent ответ должен приходить строго в то активити, из которого вызывается вызывается сервис. А в случае с BroadcastReceiver стартовать сервис мы можем из одного активити, а результаты ловить как в нем, так и в любом активити, настроенном на получение этого BroadcastReceiver.

Я прав?
насколько я понимаю основное назначение PendingIntent - это возможность выполнение интента сторонними приложениями "от имени" вашего приложения. То есть, будут использоваться все разрешения и даже тот же юзер в системе. Такой интент может быть выполнен даже когда ваше приложение уже давно закрыто.
Из этого следуют три основных случая использования:
интент выполняется NotificationManager'ом, то есть когда юзер что-то делает с нотификейшеном которое пришло.
интент выполняется App Widget'ом - из Home экрана выполняется интент при взаимодействии с виджетом экрана
интент выполнятся AlarmManager'ом в определенный момент времени.

то есть, использовать PendingIntent для передачи данных из активити в сервис и обратно это неприродно как-то
две ссылки по теме:
http://developer.android.com/intl/ru/gu ... dingIntent
http://codetheory.in/android-pending-intents/