`在 tauri 应用程序(主要是 MacOS)中想要监听全局按键和鼠标事件。 我尝试使用 rdev(https://github.com/Narsil/rdev.git),这是代码,但它似乎不起作用。终端中没有打印任何内容。
代码如下:
use rdev::{listen, Event}; use std::thread; use tauri::Manager;
fn callback(event: Event) { println!("My callback {:?}", event); } fn main() { thread::spawn(|| listen(callback));
tauri::Builder::default()
.invoke_handler(tauri::generate_handler![
])
.setup(|app| {
let window = app.get_window("main").unwrap();
window.open_devtools();
Ok(())
})
.run(tauri::generate_context!())
.expect("error while running Tauri application");
}
您可能希望将整个逻辑放入 tauri::Builder 范围中。 我相信监听函数从来没有被调用过。或者没有足够的权限来运行,或者根本不与您的 tauri 应用程序处于同一运行时。在调用监听函数之前尝试使用 eprintln 以确保它首先被调用。
并查看 rdev 的 os 链接注意事项