6个版本
0.9.1 | 2024年7月25日 |
---|---|
0.8.3 | 2024年4月8日 |
0.8.2 | 2023年8月5日 |
0.8.1 | 2023年6月8日 |
0.7.9 | 2021年11月9日 |
#45 in 操作系统
每月 17,500 下载量
在 6 crates 中使用
160KB
3.5K SLoC
battery
Rust crate提供关于笔记本电脑电池的跨平台信息。
目录
概述
battery
提供对笔记本电脑电池状态的跨平台统一API。
其主要目标是封装操作系统特定的接口,覆盖所有黑客和遗留案例,并将电池信息(如充电状态、能量速率、电压和温度)作为类型值返回,必要时重新计算为SI测量单位。
支持的平台
- Linux 2.6.39+
- MacOS 10.10+
- iOS
- Windows 7+
- FreeBSD
- DragonFlyBSD
- NetBSD
请注意,iOS实现使用IOKit绑定,您的应用程序可能会因该原因被Apple自动拒绝。使用风险自担。
安装
作为先决条件,battery
crate需要至少Rustc版本1.69或更高。
将以下行添加到Cargo.toml
[dependencies]
battery = "0.8.3"
示例
fn main() -> Result<(), battery::Error> {
let manager = battery::Manager::new()?;
for (idx, maybe_battery) in manager.batteries()?.enumerate() {
let battery = maybe_battery?;
println!("Battery #{}:", idx);
println!("Vendor: {:?}", battery.vendor());
println!("Model: {:?}", battery.model());
println!("State: {:?}", battery.state());
println!("Time to full charge: {:?}", battery.time_to_full());
println!("");
}
Ok(())
}
有关更多示例,请参阅仓库中的battery/examples/
文件夹。
用户
这是battery
crate用户的非完整列表。如果您也在使用它,请给我发消息,我将在此处添加您的项目!
starship
starship
是Spaceship ZSH的最小化、强大且极具可定制性的提示符的Rust端口。
它使用battery
crate在shell提示符中显示当前电池水平和状态。
以下是@matchai的说法
我真的很欣赏我们能够轻松地运行您的库!电池API是我们此项目前身的一个头疼问题 😅
还有这条推文!
依赖关系
~1.1–2.7MB
~48K SLoC