Xiaomi プッシュを使用します。
その後、Xiaomi からプッシュされた情報を BroadcastReceiver と統合されたクラスで受け取ったのですが、同時に UI 上の未読値も更新したいのですが、どうすればよいでしょうか?
ringa_lee
データを取得して、処理が必要な対応する UI クラスに独自のアプリのブロードキャストを送信します
あなたが話しているUIの未読情報がランチャーの右上隅にあるアイコンを指すのか、アプリ内のUIの未読情報を指すのかはわかりません。前者は開発者とは関係ありません。国内メーカーのシステムは、アプリが受信した通知の数を自動的にカウントします。後者の場合は、onReceivePassThroughMessage(Context context, MiPushMessage message)メソッド
onReceivePassThroughMessage(Context context, MiPushMessage message)
メッセージ数を更新するにはさまざまな方法があります。適切な方法を選択してください。たとえば、パッシブに表示することもできます: sharedPreference msgCout を維持し、対応するページで msgCount を取得して UI に表示することもできます。アクティブなディスプレイ: メッセージの数を表示したいインターフェイスにブロードキャストを登録して送信することもできます。上記のコードでこのブロードキャストにメッセージを送信するか、EventBus メッセージ送信などを使用できます
sharedPreference msgCout
BroadcastReceiver が時間のかかる操作を行うと ANR が発生するため、UI を直接変更する方法はありません。一般的に、UI の更新を通知するために RxBus が使用されます。また、上記の Sp も使用できます。 UI を直接変更することはありませんが、手動で更新する必要があります。MVP アーキテクチャを使用している場合は、プレゼンターでメソッドの更新を直接調整できます
データを取得して、処理が必要な対応する UI クラスに独自のアプリのブロードキャストを送信します
あなたが話しているUIの未読情報がランチャーの右上隅にあるアイコンを指すのか、アプリ内のUIの未読情報を指すのかはわかりません。前者は開発者とは関係ありません。国内メーカーのシステムは、アプリが受信した通知の数を自動的にカウントします。後者の場合は、
でメッセージを解析することで対応する操作を実行します。 リーリーonReceivePassThroughMessage(Context context, MiPushMessage message)
メソッドメッセージ数を更新するにはさまざまな方法があります。適切な方法を選択してください。たとえば、パッシブに表示することもできます:
sharedPreference msgCout
を維持し、対応するページで msgCount を取得して UI に表示することもできます。アクティブなディスプレイ: メッセージの数を表示したいインターフェイスにブロードキャストを登録して送信することもできます。上記のコードでこのブロードキャストにメッセージを送信するか、EventBus メッセージ送信などを使用できますBroadcastReceiver が時間のかかる操作を行うと ANR が発生するため、UI を直接変更する方法はありません。一般的に、UI の更新を通知するために RxBus が使用されます。また、上記の Sp も使用できます。 UI を直接変更することはありませんが、手動で更新する必要があります。MVP アーキテクチャを使用している場合は、プレゼンターでメソッドの更新を直接調整できます
。