ネットワーク(特にモバイルデータ)の変更(接続/切断)をリッスンする必要があります。ブロードキャストレシーバーと ConnectivityManager を使用して接続の種類を知る方法を知っています。
しかし、ブロードキャストレシーバーでは、切断中のネットワークを聞きたいときに、接続が新しいネットワークに切り替わってからインテントを受信します。
なぜ私はこれをしたいのですか?
モバイルデータのデータ統計、つまり 2g/3g/4g/LTE で送受信されたデータの量を取得したいと考えています。TrafficStats.getMobileRxBytes() を使用して受信したデータを取得していますが、モバイル データに接続していない場合、このメソッドがゼロを返すとドキュメントに記載されているのとは反対です。ここでわかるように、私だけでなく多くの人がこの問題に直面しています。
Play ストアのアプリを見て、毎日使用されるデータ量を示す回避策があることは知っています。
また、ユーザーがモバイルデータに接続しているときに1秒ごとに使用されるデータを記録すると、バッテリーにはあまり良くないと思います.
この問題に対処するのを手伝ってください。
ありがとうございました