Как узнать текущий уровень заряда батареи в .NET CF 3.5?

Как или как лучше всего узнать текущий уровень заряда батареи устройства в .NET CF 3.5 на Windows Mobile 5 и 6?


person Brandon    schedule 25.03.2009    source источник


Ответы (3)


Я думаю, вы хотите использовать Microsoft.WindowsMobile.Status namepsace (в частности, SystemState класс.

using Microsoft.WindowsMobile.Status;

...

BatteryLevel batteryLevel = SystemState.PowerBatteryStrength;
BatteryState batteryState = SystemState.PowerBatteryState;

См. этот пост для полного примера кода.

person Noldorin    schedule 25.03.2009
comment
Если вы посетите ссылку - возможно, стоит взглянуть на другой непринятый ответ. В нем есть хорошая информация. Вероятно, вам следует обновить ответ (если вы так склонны), чтобы отразить это? :) - person OldTinfoil; 13.08.2014

Вероятно, вам нужен класс State Notification Broker, который рекомендует Нолдорин. Я не думаю, что это дает вам очень точную информацию о зерне. Вы получаете информацию типа «Низкий» или «Очень низкий». Если вам нужны конкретные проценты, рассмотрите возможность использования GetSystemPowerStatusEx.

HOWTO: Получите статус питания устройства GetSystemPowerStatusEx

person Chris Craft    schedule 25.03.2009

Чтобы добавить к ответу CJ, вы можете найти пример кода для получения подробной информации о батарее с http://www.codeproject.com/kb/mobile/Wimopower1.aspx . Эта информация включает в себя уровень мощности аккумулятора, температуру, заряжается он или разряжается, а также количество потребляемого тока.

http://j2i.net/resized-image.ashx/__size/800x0/__key/CommunityServer.Blogs.Components.WeblogFiles/home/powerMeter.png

person Joel    schedule 27.03.2009