tasker构建节假日区别情景模式

最开始的想法来源于华为闹钟的智能跳过节假日,就是日历中订阅中国节假日,闹钟从日历中获取数据,非工作日就不闹钟了。这个功能非常好,但不知道为什么华为只在闹钟里面设了。

因为工作关系,我上班时间手机需要设为静音,而早上、中午、晚上需要设音量最高防止漏接电话。当时使用tasker实现了这个功能,但是并不完美,只能做到传统的周一到周五应用工作日状态。最理想的自然是非工作日就不用给我设静音了,于是我就想参照华为闹钟的功能来实现这一想法。然而华为并没有公开相关的API,系统里面其他app没办法调用数据,只能另辟蹊跷。

为此我写了两个版本的配置:

一、在线查询版

利用了tasker的http get功能,通过http get连接网络免费的节假日API接口,返回数据判断当天是否工作日。

以上代码另存为xml供tasker导入即可

然后建立一个定时任务,每天早上或者晚上运行这个任务一次,即可每天更新%Holiday2的值,再把相关工作的情景模式添加状态条件,只有%Holiday2=0的时候条件启动即可。

这里用到的是api.goseek.cn提供的接口,如果想自己搭建api,可以参考

http://tool.bitefu.net/jiari/

下载里面的源代码,上传到自己网站,再更改相关tasker代码。不详细叙述。

二、离线可用版

上面的方法是第一版本,好处是比较简单(并不)、适应性比较广,基本上导入即可用,但有时如果遇到网络故障或者不方便上网就2b了。于是想到了第二版本,本地查询版。[……]

Read more