fix(adb): adb path reading

This commit is contained in:
AkiChase 2024-05-22 09:41:24 +08:00
parent b8dbabb8f3
commit 30f6d37c2a
3 changed files with 16 additions and 5 deletions

View File

@ -88,6 +88,7 @@ pub struct Adb;
impl Adb { impl Adb {
pub fn cmd_base() -> Command { pub fn cmd_base() -> Command {
let adb_path = share::ADB_PATH.lock().unwrap().clone(); let adb_path = share::ADB_PATH.lock().unwrap().clone();
println!("{}", &adb_path);
#[cfg(target_os = "windows")] #[cfg(target_os = "windows")]
{ {
let mut cmd = Command::new(adb_path); let mut cmd = Command::new(adb_path);

View File

@ -164,7 +164,10 @@ fn set_adb_path(adb_path: String, app: tauri::AppHandle) -> Result<(), String> {
let path = std::path::PathBuf::from("store.bin"); let path = std::path::PathBuf::from("store.bin");
let store_res: Result<(), tauri_plugin_store::Error> = let store_res: Result<(), tauri_plugin_store::Error> =
tauri_plugin_store::with_store(app, stores, path, |store| { tauri_plugin_store::with_store(app, stores, path, |store| {
store.insert("adbPath".to_string(), serde_json::json!(adb_path))?; store.insert(
"adbPath".to_string(),
serde_json::Value::String(adb_path.clone()),
)?;
*share::ADB_PATH.lock().unwrap() = adb_path; *share::ADB_PATH.lock().unwrap() = adb_path;
Ok(()) Ok(())
}); });
@ -190,9 +193,14 @@ async fn main() {
tauri_plugin_store::with_store(app.app_handle().clone(), stores, path, |store| { tauri_plugin_store::with_store(app.app_handle().clone(), stores, path, |store| {
// load adb path // load adb path
match store.get("adbPath") { match store.get("adbPath") {
Some(value) => *share::ADB_PATH.lock().unwrap() = value.to_string(), Some(value) => {
*share::ADB_PATH.lock().unwrap() = value.as_str().unwrap().to_string()
}
None => store None => store
.insert("adbPath".to_string(), serde_json::json!("adb")) .insert(
"adbPath".to_string(),
serde_json::Value::String("adb".to_string()),
)
.unwrap(), .unwrap(),
}; };

View File

@ -66,12 +66,14 @@ onActivated(async () => {
}); });
onMounted(async () => { onMounted(async () => {
store.checkAdb = checkAdb;
await checkAdb();
await loadLocalStore(); await loadLocalStore();
store.checkUpdate = checkUpdate; store.checkUpdate = checkUpdate;
store.showInputBox = showInputBox; store.showInputBox = showInputBox;
if (store.checkUpdateAtStart) checkUpdate(); if (store.checkUpdateAtStart) checkUpdate();
store.checkAdb = checkAdb;
setTimeout(() => {
checkAdb();
}, 500);
}); });
let checkAdbMessage: MessageReactive | null = null; let checkAdbMessage: MessageReactive | null = null;