使用 TASKER 自动切换启动器/主题设置,当由其他程序更改时

6次阅读
没有评论

问题描述

正在使用华为 P9+ 和 Android 7(牛蛙)操作系统,并在默认启动器中安装了 Nova Launcher。该设备常出现系统自动将启动器从 Nova 更改回华为内置的 Home 启动器情况。尽管用户已手动调整并将其设置为默认,但在某些情况下这种更改会随机恢复。
由于这种不便,希望借助 Tasker 等工具实现自动化,每当启动器被设为除 Nova Launcher 以外其他程序时,便自动切换回 Nova Launcher。

解决方案

注意:使用此方法需确保 Tasker 和 Secure Settings 安装无误,并且设备已正确root。

方案1 – 使用 TASKER 脚本实现自动切换启动器

  1. 打开 Tasker 并进入任务编辑界面。
  2. 创建一个任务 并命名为“恢复NovaLauncher”,在此任务中输入执行的脚本内容。
  3. 在 Nova Launcher 的设置菜单 (Settings > Default App Settings) 中找到“应用程序默认设置”(App Default Settings),将事件触发类型设为 Launch app

使用以下 Tasker 脚本来实现自动切换功能:
– 步骤1:打开并新建一个任务(文件夹)名为恢复NovaLauncher
– 步骤2:在该任务中添加条件,检查当前启动器是否非 Nova Launcher
tasker
# 检查哪个是默认启动器
if [[ $(adb shell cmd package get-package-info nova_launcher | grep -c default) == 0 ]]; then
# 启动器不是NovaLauncher
set var %launcher_is_not_nova
else
end
fi

– 步骤3:如果判断条件成立(即非 Nova Launcher),则执行切换 Nova Launcher 动作。
tasker
if isset %launcher_is_not_nova; then
# 切换到NovaLauncher
run command adb shell am start -n [packagename/packageclass]
end
fi

– 最后,将此任务设为自动触发方式。可以使用 Secure Settings 自定义规则触发这个任务——每当启动器变化时,运行该任务。
“`tasker
Trigger:
Secure Settings > Default App Changes (Application)

Action:    
   Run Task > 恢复NovaLauncher

“`

说明:
1. 在实际操作中需要将 [packagename/packageclass] 替换为 Nova Launcher 的实际应用包名和启动类名,可通过执行 adb shell dumpsys window 命令了解。
2. 确保 Tasker 中相关功能激活且配置正确。

方案2 – 使用 TASKER 和 Secure Settings 配合使用

  1. 打开 Tasker 后,使用已准备好的任务脚本实现启动器自动切换。

    • 步骤1: 如上所述构建自定义运行条件和执行动作。
      “`tasker
      Trigger:
      Secure Settings > Default App Changes (Application)

    Action:
    Run Task > 恢复NovaLauncher
    “`
    2. 由于部分机型不兼容特定 SuperSu 版本,使用 Secure Settings 可有效避免系统权限问题。
    3. 使用设备中的其他第三方工具或脚本管理器(比如 MacroDroid)来监控并执行相应的启动器更换任务也可能是一种替代方案。

通过此方案可以实现更可靠且灵活的自动切换功能。当设置为其他启动器后,该策略能够帮助用户迅速恢复到 Nova Launcher 环境,提升体验的稳定性和流畅性。

正文完