如何在PC端一次性开启Tasker的所有权限和服务

Tasker需要开启很多服务和获取很多权限

通过下面的命令可以详细获取Tasker相关的权限和服务

adb shell dumpsys package net.dinglisch.android.taskerm

也可以用下面的命令将所有显示的信息保存到文本文件中

adb shell dumpsys package net.dinglisch.android.taskerm >tasker.txt

1.权限有普通权限和特殊权限,大部分权限可以手动通过设置来打开,一部分特殊权限需要使用adb授权.

a. 常规权限可以通过下面的代码获取

adb shell pm grant net.dinglisch.android.taskerm android.permission.PACKAGE_USAGE_STATS
adb shell pm grant net.dinglisch.android.taskerm android.permission.BODY_SENSORS
adb shell pm grant net.dinglisch.android.taskerm android.permission.WRITE_CALL_LOG
adb shell pm grant net.dinglisch.android.taskerm android.permission.READ_CALL_LOG
adb shell pm grant net.dinglisch.android.taskerm android.permission.RECEIVE_SMS
adb shell pm grant net.dinglisch.android.taskerm android.permission.WRITE_EXTERNAL_STORAGE
adb shell pm grant net.dinglisch.android.taskerm android.permission.RECORD_AUDIO
adb shell pm grant net.dinglisch.android.taskerm android.permission.READ_PHONE_STATE
adb shell pm grant net.dinglisch.android.taskerm android.permission.SEND_SMS
adb shell pm grant net.dinglisch.android.taskerm android.permission.READ_SMS
adb shell pm grant net.dinglisch.android.taskerm android.permission.ACCESS_FINE_LOCATION
adb shell pm grant net.dinglisch.android.taskerm android.permission.ACCESS_COARSE_LOCATION
adb shell pm grant net.dinglisch.android.taskerm android.permission.CAMERA
adb shell pm grant net.dinglisch.android.taskerm android.permission.PROCESS_OUTGOING_CALLS
adb shell pm grant net.dinglisch.android.taskerm android.permission.READ_CONTACTS
adb shell pm grant net.dinglisch.android.taskerm android.permission.WRITE_CONTACTS
adb shell pm grant net.dinglisch.android.taskerm android.permission.CALL_PHONE
adb shell pm grant net.dinglisch.android.taskerm android.permission.READ_CALENDAR
adb shell pm grant net.dinglisch.android.taskerm android.permission.WRITE_CALENDAR
adb shell pm grant net.dinglisch.android.taskerm android.permission.CHANGE_CONFIGURATION
adb shell pm grant net.dinglisch.android.taskerm android.permission.ANSWER_PHONE_CALLS
adb shell pm grant net.dinglisch.android.taskerm android.permission.SET_MEDIA_KEY_LISTENER
adb shell pm grant net.dinglisch.android.taskerm android.permission.SYSTEM_ALERT_WINDOW
adb shell pm grant net.dinglisch.android.taskerm android.permission.SET_PROCESS_LIMIT
adb shell pm grant net.dinglisch.android.taskerm android.permission.READ_EXTERNAL_STORAGE
adb shell pm grant net.dinglisch.android.taskerm android.permission.ACCESS_BACKGROUND_LOCATION

b. 可以通过 (把Tasker安装文件放置到手机存储根目录,代码中的/storage/6C32-2486/ 为手机根目录路径,每个手机均不同)

adb shell pm install -g /storage/6C32-2486/tasker.apk

或者(把Tasker安装文件放置到adb根目录)

adb install -g tasker.apk

这两种adb安装方式直接获取常规权限.

c. 可以在系统应用设置界面手动赋予权限.

特殊权限只能通过adb或者root授权:

adb shell pm grant net.dinglisch.android.taskerm android.permission.WRITE_SECURE_SETTINGS
adb shell pm grant net.dinglisch.android.taskerm android.permission.DUMP
adb shell pm grant net.dinglisch.android.taskerm android.permission.READ_LOGS
adb shell pm grant net.dinglisch.android.taskerm android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER

2.Tasker需要开启的服务有 无障碍服务(辅助功能) 和 通知管理服务,既可以手动通过系统设置赋权也可以使用下面的adb 命令开启

settings put secure enabled_accessibility_services net.dinglisch.android.taskerm/.MyAccessibilityService
settings put secure accessibility_enabled 1

settings put secure enabled_notification_listeners net.dinglisch.android.taskerm/.NotificationListenerService
settings put secure notification_enabled 1
  1. 除此以外已知的还有 设备管理器,通知使用权,电池优化,应用自启,允许第三方启动,开机启动,助手设置 需要手动开启. 设备管理器 辅助应用 辅助应用 通知使用权 电池优化 应用启动管理

  2. 需要关闭的权限或者服务:涉及到短信的配置,建议关闭系统的短信验证码保护(例如:EMUI)

Android 10,Tasker 5.9.1 暂不建议开启 WRITE_SECURE_SETTINGS 可以使用下面的命令取消权限

adb shell pm revoke net.dinglisch.android.taskerm android.permission.WRITE_SECURE_SETTINGS

注:基于Android 10,Tasker 5.9.1 不同系统版本和应用版本可能略有不同.

Tasker 如何使用 Tasker 插件以及 Tasker 第三方应用

很多人不清楚 Tasker 插件和 Tasker 第三方应用之间的区别,以及与 Tasker 的关系有何不同,其实对于使用者而言并不需要理解他们之间的区别,因为这两者在使用上的区别逐渐模糊而变得没有区别,不过本人后面几篇文章会详细介绍部分 Tasker 插件和 Tasker 第三方应用,说明下有利于读者理解之后的内容。

本篇文章简单说明以下四个问题:1. 什么是 Tasker 插件,2. 什么是 Tasker 第三方应用,3. 如何使用他们,4. 常用的 Tasker 插件和第三方应用有哪些(本篇重点)。

  1. 对于使用者而言,Tasker 插件是指专门为 Tasker 添加附属功能的 Android 应用,单独使用的话无任何功能可用,关系类似于 Chrome 和 Chrome 扩展程序;Tasker 第三方应用是指本身有独立的功能可用,既可以脱离 Tasker 单独使用,也可以结合 Tasker 使用,关系类似于 Chrome 和 Chrome 应用。

  2. 对于开发者而言,Tasker 插件是指专门为 Tasker 应用的功能不足或者不宜使用而设计的辅助应用;Tasker 第三方应用是指为了自己的应用添加一个可以和 Tasker 搭配使用的接口。

  3. 使用方式分为两种:作为触发条件使用和作为任务操作使用。

  • a  作为触发条件使用:创建配置时选择事件(Event)或者状态(State)中的插件 (Plugin)。

事件插件状态插件

  • b  作为任务操作使用:添加操作时选择插件 (Plugin)。

操作类别操作插件第三方 4. 常用的 Tasker 插件和第三方应用

  1. Tasker 插件非常多,目前常用到的 Tasker 插件有两大类:joaomgcd 作者的 auto 系列插件(程序名以 auto 开头)和 Marco Stornelli 作者的 task 系列插件(程序名以 task 结尾)。这两大类的应用功能其实很相似以至于可以把他们一一对应起来,比如:

    1. AutoToolsSecureTask 主要功能有 系统安全设置,管理系统锁屏,管理设备 PIN,应用管理 (安装,卸载,冻结等等),等等系统高级设置一类。
    2. AutoShareIntentTask 主要功能有 添加右键菜单,好用的 intent 设定,启动和管理应用快捷方式,方便 Tasker 来与其他第三方应用互动操作。
    3. AutoInputTouchTask 主要涉及模拟按键和手势(点击,长按,滑动等等),以及监控系统按钮和手势操作。
    4. AutoVoiceTasker Now 主要涉及语音助手相关的功能。
  2. 比较常用到的 Tasker 第三方应用有 KLWP,KWGT,KLCK, 睡眠追踪,绿色守护,SS,SSR, 等等。

    1. Tasker 可以将 Tasker 变量传递给 KLWP,KWGT,KLCK,也可以控制加载预设;
    2. Tasker 既可以监控和控制睡眠追踪的状态(睡眠状态或者退出睡眠状态);
    3. Tasker 可以通过绿色守护来休眠和唤醒全部或者选定的应用;
  3. Tasker wiki 站列出了大量的插件和第三方应用,可供参考。