Moh*_*nde 6 java android status power-management
@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();
}
Run Code Online (Sandbox Code Playgroud)
表现:
<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>
Run Code Online (Sandbox Code Playgroud)
在此代码中,Toast始终显示"Not Charging!".我在实际设备上对此进行了测试,当我将其插入AC或USB电源时,它仍显示"Not Charging!" 吐司.
您无法ACTION_BATTERY_CHANGED通过清单注册,因此您没有收到这些广播.你试图获得BatteryManager额外的东西Intents没有那些额外的东西(例如ACTION_POWER_CONNECTED).因此,您将获得默认值BATTERY_STATUS_UNKNOWN.
| 归档时间: |
|
| 查看次数: |
3095 次 |
| 最近记录: |