From 0f59a412e4b70797700402ece1883ea19d92ce4b Mon Sep 17 00:00:00 2001 From: Himadri Bhattacharjee <107522312+lavafroth@users.noreply.github.com> Date: Thu, 12 Sep 2024 22:14:59 +0530 Subject: [PATCH] fix: use `pm block` and `pm clear` for sdk versions below 19 --- src/core/sync.rs | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/core/sync.rs b/src/core/sync.rs index bab4846..2f04492 100644 --- a/src/core/sync.rs +++ b/src/core/sync.rs @@ -245,7 +245,7 @@ pub fn apply_pkg_state_commands( sdk if sdk >= 23 => vec!["pm uninstall"], // > Android Marshmallow (6.0) 21 | 22 => vec!["pm hide", "pm clear"], // Android Lollipop (5.x) 19 | 20 => vec!["pm block", "pm clear"], // Android KitKat (4.4/4.4W) - _ => vec!["pm uninstall"], // Disable mode is unavailable on older devices because the specific ADB commands need root + _ => vec!["pm block", "pm clear"], // Disable mode is unavailable on older devices because the specific ADB commands need root }, _ => vec![], }, @@ -256,14 +256,11 @@ pub fn apply_pkg_state_commands( } pub fn request_builder(commands: &[&str], package: &str, user: Option<&User>) -> Vec { - #[allow(clippy::option_if_let_else)] - match user { - Some(u) => commands - .iter() - .map(|c| format!("{} --user {} {}", c, u.id, package)) - .collect(), - None => commands.iter().map(|c| format!("{c} {package}")).collect(), - } + let maybe_user_flag = user_flag(user); + commands + .iter() + .map(|c| format!("{}{} {}", c, maybe_user_flag, package)) + .collect() } pub fn get_phone_model() -> String {