@Override
public void onReceive(Context context, Intent intent) {
int status = intent.getIntExtra(BatteryManager.EXTRA_STATUS,
BatteryManager.BATTERY_STATUS_UNKNOWN);
if (status == BatteryManager.BATTERY_STATUS_CHARGING
|| status == BatteryManager.BATTERY_STATUS_FULL)
Toast.makeText(context, "Charging!", Toast.LENGTH_SHORT).show();
else
Toast.makeText(context, "Not Charging!", Toast.LENGTH_SHORT).show();
}
マニフェスト充電されていません。このコードでバッテリー状況は常に
<receiver android:name=".receiver.BatteryReceiver">
<intent-filter>
<action android:name="android.intent.action.ACTION_POWER_CONNECTED"/>
<action android:name="android.intent.action.ACTION_POWER_DISCONNECTED"/>
<action android:name="android.intent.action.BATTERY_CHANGED" />
</intent-filter>
</receiver>
を、トーストは、常に「充電中ではない!」と表示されます。実際のデバイスでこれをテストしましたが、ACまたはUSB電源に接続すると、まだ「充電していません!」と表示されます。トースト。
に等しいという一定であることは、あなたのintent.getIntExtraと間違って何かをtheresの、どここの方法確認することを一定であるため、両方が同一であり、から呼び出され、正しいパラメータでインテントを設定していることを確認してください – John
ステータスはどうなっていますか? – zmbq
@ジョン私はマニフェストで使用しています。 –