经常有人吐槽一加5能识别来电,为啥不能直接给屏蔽了,我最近也经常接到推销电话,所以研究了下用tasker来实现

本篇教程其他手机也可以用,教程看起来有点麻烦,但希望仔细看,多看几遍,理解了,就容易了

请勿转载到一加论坛

关于tasker拦截骚扰电话

1,既然要做自动拦截,那就高度自动化:自动判断是否为骚扰电话,自动挂断骚扰电话
2,骚扰电话库要可以持续从网络更新,想到了CC来电拦截这个APP的离线数据库,可以机智的借用一下
3,tasker本身可以获取来电事件且支持挂断电话的功能,这让本教程的实现成为可能
4,CC来电拦截的数据库需要用sqlite3来读取,但一加5并不支持(其实是氢氧都不支持),所以我们还要预先在手机上安装sqlite库,下面教程会详细讲到,安装过busybox的都应该能理解,sqlite3和busybox很类似的

Tasker自动拦截骚扰电话教程

1,首先,仍然是下载安装tasker
百度网盘 密码igek
蓝奏云
城通网盘
2,安装CC来电拦截,打开进入设置——升级离线数据库。注意,本教程的方案仅使用CC来电拦截的骚扰电话库,并不需要APP本身的拦截功能,所以这个APP安装后可以关闭来电拦截功能,甚至可以丢冰箱或者黑域它,随便怎样,总之不需要它后台运行,只要不卸载,怎么样都行。

3,安装Sqlite installer,打开后,授予ROOT权限,点击install安装即可,安装完成有提示。(安装完这软件就没用了,你懂得吧,就好比busybox安装器)
4,以上,准备工作已经做完,下面开始tasker上的配置:打开tasker,配置文件——加号新建——状态——电话——通话,类型设置为“来电”,返回自动保存,弹出新建任务菜单
5,新建任务,填写名字“骚扰拦截”或者随便什么名字,加号新建——代码——运行外壳——输入以下命令,勾选“使用ROOT”,下面的输出存储到,填写%incallnum

B=%CNUM
A=$(sqlite3 /data/data/zhs.betalee.ccCallBlocker/databases/database "select rule from netrulesv8" | grep $B -w)
if [ $A -eq $B ] ; then
echo 1
else
echo 0
fi


6,返回自动保存,然后再点击加号新建——电话——结束通话,点击If后面的加号,如图设置,注意等号那里,选择“等于”

7,返回自动保存。现在已经设置好了

是不是非常简单?因为在那串命令里我已经将所有要完成的主要操作完成了,最终精简到只有两条任务。第一条做了以下事情:1)获取来电的号码;2)用sqlite3命令在CC来电来接软件的骚扰电话库里搜索来电话号码;3)如果搜索到,把1,存在变量%incallnum中,如果没搜到,就把0存到变量%incallnum中。第二条则简单易懂,如果变量%incallnum为1,则挂断电话

如何测试设置成功了?

这也是要花费一些功夫的,如果你是老司机,对上面的操作信心一百分,不需要测试,那就不用往下看。
1)测试需要用到另外一台电话(特么废话)
2)安装一个Sqlite Editor,在APPS页下找到CC来电拦截——点击CC来电拦截——点击database——netrulesv8——然后点击顶部“NEW RECORD”,在rule下面填写你要屏蔽的电话,然后点击Save保存



3)好了,用你准备好的另一个号码,打这台手机吧,看看是否会自动挂断。如果成功的话,来电界面几乎是闪一下就消失了,非常快。

其他说明

1,记得tasker要保持后台
2,可以定期打开CC来电拦截更新下数据库
3,记得把刚刚设置过的测试的号码用Sqlite Editor删掉
4,广告时间:远程救砖、刷机、咨询等一切搞机业务都可以联系Q 981272842(收费)