2017-06-06 1 views
-1

Comme vous le savez, la méthode sendStickyBroadcast est maintenant deprecated. Comment le remplacer?Comment remplacer sendStickyBroadcast dans Android?

Bien sûr, je peux utiliser sendBroadcast mais ce ne sera pas collant.

+1

Veuillez expliquer en détail le cas d'utilisation de votre diffusion persistante. Par exemple, si vous cherchez à communiquer entre les composants d'une application à un seul processus, utilisez un bus d'événements et EventBus de greenrobot propose des événements persistants. – CommonsWare

Répondre

1

Vous pouvez utiliser un bus d'événements, les bibliothèques suivantes sont parmi les plus utilisées. - https://github.com/greenrobot/EventBus - http://square.github.io/otto/ - https://blog.kaush.co/2014/12/24/implementing-an-event-bus-with-rxjava-rxbus/ (comment utiliser Rx comme un bus d'événements)

Une autre approche serait de créer une classe qui écoute l'émission, puis stocke le dernier état qu'il récupéré. À mon avis, cette approche ne serait pas idéale cependant.

0

Ceci est l'explication de Google à pourquoi Sticky Broadcasts était obsolète.

Les diffusions collantes ne doivent pas être utilisées. Ils ne fournissent aucune sécurité (personne ne peut y accéder), aucune protection (personne ne peut les modifier), et beaucoup d'autres problèmes. Le modèle recommandé consiste à utiliser une diffusion non collante pour signaler que quelque chose a changé, avec un autre mécanisme permettant aux applications de récupérer la valeur actuelle lorsque cela est souhaité.

Espérons que cela aide.