Co chciałem zrobić, to zaloguj się na procent baterii. Wiem, że odpowiednikiem w Linuksie jest sysctl (hw.acpi.battery.life). Jednak kiedy przeszedłem przez człowieka z sysctl w mac os x nie znalazłem odpowiednika kodu, aby go znaleźć. Czy ktoś może wskazać, jak to zrobić, używając obiektywu c? Mogę wywołać sysctlbyname, ale nie ma tego jako dane wejściowe w jego strukturze. Prosimy o pomocJak programowo uzyskać żywotność baterii mac os x macbook?
Odpowiedz
Spróbuj użyć funkcji IOKit i IOPowerSources. Możesz użyć IOPSCopyPowerSourcesInfo(), aby otrzymać obiekt typu blob, a następnie IOPSCopyPowerSourcesList(), aby wyodrębnić z niego CFArray, wymieniając źródła zasilania. Na koniec możesz użyć IOPSGetPowerSourceDescription(), aby pobrać słownik.
Jeśli można użyć wiersza polecenia, można użyć polecenia pmset
tak:
$ pmset -g
+1 na IOPowerSources –
dokładniej 'pmset -g batt' pokazuje procent baterii i status. – DebugXYZ
@Dominic większość linków w twoim poście jest martwa. –
można użyć ioreg w linii poleceń, jak również. Na przykład:
ioreg -l -w0 |grep CurrentCapacity
daje status prąd akumulatora, który można porównać do Maksymalna pojemność:
ioreg -l -w0 |grep MaxCapacity
Innym sposobem uzyskania trochę więcej informacji na temat stanu baterii jest użycie NSTask wykonanie europejskiego Polecenie system_profiler z SPPowerDataType jako argumentem. Na moim Mac, to daje mi następujące wyniki:
informacji o baterii:
Model Information:
Serial Number: W01396THJD3LA
Manufacturer: SMP
Device Name: bq20z451
Pack Lot Code: 0
PCB Lot Code: 0
Firmware Version: 201
Hardware Revision: 000a
Cell Revision: 165
Charge Information:
Charge Remaining (mAh): 5013
Fully Charged: Yes
Charging: No
Full Charge Capacity (mAh): 5086
Health Information:
Cycle Count: 72
Condition: Normal
Battery Installed: Yes
Amperage (mA): -300
Voltage (mV): 12303
Aby odzyskać to, co konkretnie można też analizować odpowiednie linie, lub wygenerować plist z tym poleceniem:
$ system_profiler SPPowerDataType -xml> BatteryInfo.plist
Ułatwiłoby to pobieranie wartości na podstawie określonych kluczy.
- 1. Jak programowo utworzyć plik C w systemie Mac OS X?
- 2. Jak uzyskać typ pliku na Mac OS X?
- 3. Jak zainstalować gnu ld na Mac OS X 10.6?
- 4. Pobierz programowo rozdzielczość ekranu w OS X
- 5. Jak piszesz program dla Mac OS X?
- 6. Jak skonfigurować libusb na Mac OS X?
- 7. Jak zainstalować mod_jk na Mac OS X
- 8. Jak zainstalować wxPython na Mac OS X?
- 9. Jak odinstalować MySQL z Mac OS X?
- 10. Mac OS X: CGGetLastMouseDelta i programowanie myszy
- 11. mac os x dostęp framebuffer raw dane
- 12. Statystyki operacji odczytu/zapisu dysku w systemie Mac OS X
- 13. Mac OS X Sandbox i Dysk Arbitrażowy
- 14. Jak utworzyć wirtualny napęd CD w systemie Mac OS X
- 15. Aktualizacje aplikacji w systemie Mac OS X
- 16. pygettext.py i msgfmt.py na Mac OS X
- 17. Jaka jest różnica między mapami klawiszy - Mac OS X i Mac OS X 10.5+?
- 18. Instalacja serwera Nginx Mac OS X
- 19. Instalowanie GraphicsMagick na Mac OS X 10.8
- 20. Aplikacja Java Windows vs Mac OS X
- 21. Mac OS X darmowe kompilator C
- 22. Jak określić bernela jądra w systemie Mac OS X 10.6?
- 23. Instalacja/aktualizacja gradle na Mac OS X
- 24. Klasa UIDevice dla Mac OS X?
- 25. /proc/uptime w systemie Mac OS X
- 26. Odinstalowywanie pakietów w systemie Mac OS X
- 27. JNotify w systemie Mac OS X?
- 28. Building Google Breakpad na Mac OS X
- 29. Znajdź dostępne urządzenia USB Mac OS X
- 30. Instalowanie nokogiri Mac OS X 10.8.2 Zainstalowano kod X
Być może spróbuj dodać znacznik "cel-c". Nie mam jeszcze przedstawiciela do edycji. –
Możliwy duplikat [stanu baterii w OSX?] (Http://stackoverflow.com/questions/272552/battery-status-in-osx) –