2008-11-07 45 views
26

Làm cách nào để đọc trạng thái của pin trên MacBookPro từ ứng dụng của riêng tôi?Trạng thái pin trong OSX?

Googling cho đến nay chỉ tiết lộ API cho trình điều khiển thiết bị để xử lý các sự kiện quyền lực - không có gì về quy trình sử dụng đất truy cập thông tin này.

cảm ơn.

Trả lời

23

Bạn sẽ muốn sử dụng IOKit cho mục đích này, cụ thể là IOPowerSources functions. Bạn có thể sử dụng IOPSCopyPowerSourcesInfo() để có đốm màu và IOPSCopyPowerSourcesList() sau đó giải nén CFArray ra khỏi đó, liệt kê các nguồn điện. Sau đó, sử dụng IOPSGetPowerSourceDescription() để lấy từ điển (xem IOPSKeys.h để biết nội dung của từ điển).

+0

cảm ơn - đó chỉ là những gì tôi đang tìm kiếm. – Alnitak

-1

Hãy xem Bộ điều khiển quản lý hệ thống. Tôi không có MBP của tôi tiện dụng, nhưng tôi tin rằng bạn cần phải xem xét smc.h

71

Nếu bạn đang tìm kiếm một cách nhanh chóng để truy vấn nó từ dòng lệnh, bạn sẽ thấy lệnh pmset hữu ích. Để truy vấn trạng thái pin, cụ thể, hãy sử dụng:

 
$ pmset -g batt 
+2

Và điều này đặc biệt hữu ích khi sử dụng máy Mac của bạn từ xa thông qua SSH. Nó là tốt để biết nếu bạn cần phải chạy nước rút qua nó để kết nối với AC! – ScrollerBlaster

+4

tò mò rằng điều này có rất nhiều upvotes, khi nó rõ ràng là một cuộc gọi API tôi đang tìm kiếm (theo câu trả lời tôi chấp nhận) – Alnitak

+3

Điều đáng ngạc nhiên là vì tiêu đề/thẻ câu hỏi không phân biệt giữa kịch bản/CLI và ngữ cảnh đã biên dịch, rất nhiều (như bản thân mình) tìm thấy một câu trả lời có thể đóng gói tầm thường hữu ích hơn câu trả lời yêu cầu tôi thả vào một ngôn ngữ được biên dịch cụ thể. – xander

Các vấn đề liên quan