Androidサービス/ブロードキャストについてもっと知りたいと思ったので、バッテリー監視アプリを作成するための簡単なプロジェクトを開始しました。かなり良い結果になりました。数日間使用していますが、新しい機能を追加したいと思います。電話の充電/放電はいつから表示されるかです。
最初に、BoradcastReciever拡張クラスに2つの静的フィールドを作成することを考えました。ここで、バッテリーに関するデータを取得して公開します。1つは実際の状態(充電/放電)用で、もう1つは状態の変化が発生したときのデータです。 。このようにして、最後の変更を現在の時刻から差し引くだけで、電話の充電/放電がいつになるかを正確に知ることができます。
ただし、このソリューションには問題があります。ユーザーがアプリを起動すると、最初は正しいデータが表示されません。大したことはしませんが、Androidがこのデータをどこかで追跡しているのを見ました。私の電話の設定内でこの情報を見つけたので、なぜ苦労するのですか。
だから私の質問は: Androidシステムから最後の充電状態の変化の日付/時刻(形式に関係なく)を取得する簡単な方法はありますか?
BatteryManagerリファレンスを確認しましたが、受信者のインテントから情報を取得するために、探しているものにちなんで名付けられた定数はなく、使用できます。