有没有办法确定Blackberry是否已插入电缆? (电源/ USB)

到目前为止,我已经尝试了很多方法。

if(DeviceInfo.BSTAT_IS_USING_EXTERNAL_POWER > 0)
{
// Plugged in
// TODO : Do something
}else{
// Not plugged in
// TODO: Do something else
}


else显然是无效的代码,这根本不起作用。

但是,我在以下方面很幸运:

if((DeviceInfo.getBatteryStatus() ^ DeviceInfo.BSTAT_IS_USING_EXTERNAL_POWER) != 0)
{
    // Plugged in
    // TODO : Do something
}else{
    // Plugged in
    // TODO : Do something else
}


但是,令人遗憾的是,仅当电池电量为100%时才有效。一旦跌至下方,就会产生相反的效果。

后者是在SO上使用related issue进行编译的,但是并没有那里建议的结果。

最佳答案

这是我过去使用的:

    private boolean isBatteryCharging(){
        int battst = DeviceInfo.getBatteryStatus();
        if(((battst & DeviceInfo.BSTAT_IS_USING_EXTERNAL_POWER) != 0)
            || ((battst & DeviceInfo.BSTAT_CHARGING) != 0)
            || ((battst & DeviceInfo.BSTAT_AC_CONTACTS) != 0)){
            return true;
        }
        return false;
    }


希望能帮助到你。

09-27 21:20