отправлять широковещательные сообщения только для динамического списка приложений

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

Процесс сервисов Google Play уведомляет об этом типе событий через PendingIntent, предоставляемый принимающим приложением.

Я предпочитаю делать это с помощью отправки ограниченной трансляции по разрешениям, и я думаю, что по уважительной причине: PendingIntent нельзя сохранить постоянным способом, поэтому каждый раз, когда мое приложение будет кричать, приложения, которые зарегистрировались на мои события, должны будут перерегистрироваться на мои события ..

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

Я не нахожу в Интернете ссылок или примеров, как это сделать.

Я предполагаю, что это каким-то образом возможно, потому что кажется, что сервисы Google Play используют этот подход для уведомления push-уведомлений GCM только соответствующему получателю...

пожалуйста, помогите мне понять, как я могу сделать такую ​​​​вещь.


person Tal Kanel    schedule 29.07.2014    source источник
comment
почему этот вопрос заслуживает отрицательных голосов?   -  person Tal Kanel    schedule 29.07.2014
comment
Не мои отрицательные голоса, но я предполагаю, что причина в том, что «Чтобы воспроизвести проблему, должен быть код».   -  person Matas Vaitkevicius    schedule 29.07.2014


Ответы (1)


но что, если мне нужно решить со стороны отправителей динамически из списка, который я получаю с сервера, какие приложения позволяют получать трансляцию? Я не нахожу в Интернете ссылок или примеров, как это сделать.

Используйте явный Intent, где вы установили ComponentName конкретного BroadcastReceiver, которому вы «транслируете». Вам нужно будет «транслировать» такой явный Intent один раз для каждого приложения, которому «разрешено получать трансляцию».

person CommonsWare    schedule 29.07.2014
comment
идеально! Я сделаю это! - person Tal Kanel; 29.07.2014