23个版本 (12个稳定版本)
2.0.1 | 2024年8月3日 |
---|---|
1.9.0 | 2024年6月10日 |
1.8.0 | 2023年12月4日 |
1.7.0 | 2023年11月20日 |
0.1.4 | 2022年12月30日 |
#799 in 数据库接口
每月798次下载
用于 imessage-exporter
475KB
7.5K SLoC
imessage-database
此库提供了与iMessage数据库交互的接口。
安装
此库可在 crates.io 上找到。
文档
文档可在 docs.rs 上找到。
示例
use imessage_database::{
error::table::TableError,
tables::{
messages::Message,
table::{get_connection, Table},
},
util::dirs::default_db_path,
};
fn iter_messages() -> Result<(), TableError> {
/// Create a read-only connection to an iMessage database
let db = get_connection(&default_db_path()).unwrap();
/// Create SQL statement
let mut statement = Message::get(&db)?;
/// Execute statement
let messages = statement
.query_map([], |row| Ok(Message::from_row(row)))
.unwrap();
/// Iterate over each row
for message in messages {
let mut msg = Message::extract(message)?;
/// Deserialize message body
msg.generate_text(&db);
/// Emit debug info for each message
println!("{:?}", msg)
}
Ok(())
}
依赖项
~27MB
~506K SLoC