recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment Android peut-il mettre à jour l'interface utilisateur actuelle lorsqu'il reçoit un push dans BroadcastReceiver ?

Utilisation de Xiaomi Push.

Ensuite, j'ai reçu les informations qui m'ont été transmises par Xiaomi dans la classe intégrée à BroadcastReceiver, mais je souhaite mettre à jour les données non lues sur l'interface utilisateur en même temps. Que dois-je faire ?

ringa_leeringa_lee2735 Il y a quelques jours1023

répondre à tous(3)je répondrai

  • PHP中文网

    PHP中文网2017-05-24 11:39:50

    Apportez les données et envoyez une diffusion de votre propre application à la classe d'interface utilisateur correspondante qui doit être traitée

    répondre
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-24 11:39:50

    Je ne sais pas si les données non lues sur l'interface utilisateur dont vous parlez font référence à l'icône dans le coin supérieur droit du lanceur ou aux données non lues dans l'interface utilisateur de l'application. Les premières n'ont rien à voir avec. le développeur. Les systèmes des fabricants nationaux compteront automatiquement les reçus des applications. Si ce dernier est le cas, effectuez l'opération correspondante en analysant le message dans le onReceivePassThroughMessage (contexte contextuel, message MiPushMessage). méthodeonReceivePassThroughMessage(Context context, MiPushMessage message)方法中通过解析message做相应的操作

        @Override
        public void onReceivePassThroughMessage(Context context,MiPushMessage message){
            mMessage=message.getContent();
            if(mMessage != null){
              //更新消息数目
            }
        }

    如何更新消息数目方式就比较多了,选一个合适的即可。比如可以被动展示:维护一个sharedPreference msgCout rrreee

    Il existe de nombreuses façons de mettre à jour le nombre de messages, choisissez simplement celle qui convient. Par exemple, il peut être affiché passivement : maintenir un sharedPreference msgCout, obtenir msgCount sur la page correspondante et l'afficher sur l'UI ou l'afficher activement : vous pouvez enregistrer une diffusion sur l'interface où vous le souhaitez ; pour afficher le nombre de messages, et envoyer le message dans le code ci-dessus. Pour cette diffusion, vous pouvez également utiliser EventBus pour envoyer des messages, etc.#🎜🎜#

    répondre
    0
  • 世界只因有你

    世界只因有你2017-05-24 11:39:50

    BroadcastReceiver effectuant des opérations fastidieuses provoquera un ANR, et il n'y a aucun moyen de modifier directement l'interface utilisateur. Dans notre projet, RxBus est utilisé pour notifier les mises à jour de l'interface utilisateur. De manière générale, EventBus peut être utilisé, et le Sp mentionné ci-dessus peut également l'être. utilisé, mais cela Vous ne modifierez pas l'interface utilisateur directement, mais vous devez la rafraîchir manuellement. Si vous utilisez l'architecture MVP, vous pouvez directement ajuster la mise à jour de la méthode dans le présentateur

    .

    répondre
    0
  • Annulerrépondre