मैं क्या करना चाहता था बैटरी प्रतिशत पर एक लॉग लेना है। मुझे पता है कि लिनक्स में बराबर sysctl (hw.acpi.battery.life) है। हालांकि जब मैक ओएस एक्स में sysctl के आदमी के माध्यम से चला गया तो मुझे इसे खोजने के लिए समकक्ष कोड नहीं मिला। क्या कोई यह बता सकता है कि उद्देश्य सी का उपयोग करके इसे कैसे किया जाए। मैं sysctlbyname को कॉल कर सकता हूं लेकिन इसमें इसकी संरचना में इनपुट के रूप में नहीं है। कृपया मेरी मदद करेंमैक ओएस एक्स मैकबुक के बैटरी जीवन को प्रोग्रामिक रूप से कैसे प्राप्त करें?
उत्तर
IOKit और IOPowerSources फ़ंक्शंस का उपयोग करने का प्रयास करें। आप ब्लॉब प्राप्त करने के लिए IOPSCopyPowerSourcesInfo() का उपयोग कर सकते हैं, और IOPSCopyPowerSourcesList() उसमें से एक CFArray निकालने के लिए, बिजली स्रोतों को सूचीबद्ध कर सकते हैं। अंत में आप शब्दकोश को पकड़ने के लिए IOPSGetPowerSourceDescription() का उपयोग कर सकते हैं।
आप कमांड लाइन का उपयोग कर सकते हैं, तो आप pmset आदेश
उपयोग कर सकते हैं तो जैसा:
$ pmset -g
आईओपीवर स्रोतों पर +1 –
अधिक विशेष रूप से 'pmset -g batt' show बैटरी प्रतिशत है और स्थिति। – DebugXYZ
@ डोमिनिक आपकी पोस्ट में अधिकांश लिंक मर चुके हैं। –
आप रूप में अच्छी तरह कमांड लाइन पर ioreg उपयोग कर सकते हैं। उदाहरण के लिए:
ioreg -l -w0 |grep MaxCapacity
बैटरी की स्थिति पर कुछ अधिक जानकारी प्राप्त करने का एक और तरीका NSTask उपयोग करने के लिए निष्पादित करने के लिए किया जाता है:
ioreg -l -w0 |grep CurrentCapacity
आप वर्तमान बैटरी की स्थिति है, जो अधिकतम क्षमता की तुलना में किया जा सकता है देता है तर्क के रूप में SPPowerDataType के साथ system_profiler कमांड।
बैटरी जानकारी::
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
प्राप्त करने के लिए क्या आप विशेष रूप से, आप या तो उचित लाइनों इस आदेश के साथ पार्स सकता है, या उत्पन्न एक plist: अपने Mac पर, यह मेरे निम्नलिखित परिणाम देता है
$ system_profiler SPPowerDataType -xml> BatteryInfo.plist
इससे विशिष्ट कुंजी के आधार पर मानों को पुनर्प्राप्त करना आसान हो जाएगा।
- 1. मैकबुक पर मैक ओएस एक्स पर emacs
- 2. मैक ओएस एक्स
- 3. मैक ओएस एक्स टर्मिनल
- 4. मैक ओएस एक्स
- 5. मैक ओएस एक्स
- 6. मैक ओएस एक्स
- 7. जावा में मैक ओएस एक्स पर वेबकैम स्ट्रीम प्राप्त करें
- 8. मैक ओएस एक्स
- 9. फ़ायरफ़ॉक्स को मैक ओएस एक्स
- 10. मैक ओएस एक्स तेंदुए
- 11. मैक ओएस एक्स
- 12. मैक ओएस एक्स
- 13. मैक ओएस एक्स 10.0
- 14. मैक ओएस एक्स 10.6
- 15. मैक ओएस एक्स
- 16. मैक ओएस एक्स शेर
- 17. मैक ओएस एक्स 10.6
- 18. मैक ओएस एक्स 10.6
- 19. मैक ओएस एक्स
- 20. मैक ओएस एक्स
- 21. मैक ओएस एक्स
- 22. मैक ओएस एक्स
- 23. मैक ओएस एक्स
- 24. मैक ओएस एक्स - लाइब्रेरी
- 25. मैक ओएस एक्स
- 26. मैक ओएस एक्स
- 27. मैक ओएस एक्स
- 28. मैक ओएस एक्स शेर
- 29. मैक ओएस एक्स
- 30. मैक ओएस एक्स (सी ++)
शायद "उद्देश्य-सी" टैग जोड़ने का प्रयास करें। मेरे पास अभी तक दुर्भाग्य से संपादित करने का प्रतिनिधि नहीं है। –
[ओएसएक्स में बैटरी स्थिति] की संभावित डुप्लिकेट (http://stackoverflow.com/questions/272552/battery-status-in-osx) –