iOS9.3.3骚扰电话拦截黑名单数据库

版权声明:本文为博主阿甘(Gane_Cheng)原创文章,欢迎转载,传播知识,请留言告知并注明出处,方便文章有误改正之后能找到原文。个人之言,请抱着怀疑的态度参考! https://blog.csdn.net/Gane_Cheng/article/details/52190309

转载请注明出处:

http://blog.csdn.net/gane_cheng/article/details/52190309

http://www.ganecheng.tech/blog/52190309.html (浏览效果更好)

iPhone由于苹果不开放系统权限的原因,一直是骚扰电话的重灾区,来电之后不知道要不要接,不接,容易误事儿,接了,给你推销基金,郁闷不已。笔者曾经使用开封的手机号码,然后需要跟广州的一个人联系,约在10点见面,打了好几个电话,对方都直接挂断。无赖之下,发短信给他,说明我是谁,怎么不接电话,对方才和我联系上。等见到面了,发现对方用的是iPhone 5s,我说你怎么不接我电话啊,他说我一看是开封的号码,就挂掉了。可见在没有提示这是不是骚扰电话的情况下,依靠地区来判断有多么不靠谱。本文就是要解决这个问题。骚扰电话直接挂断,没有挂断的就是可以接的。

原理:将搜狗号码通Lite版的“骚扰电话”、“房产中介”、“诈骗”、“推销”这四类号码导出、整理、导入到Kuaidial的黑名单文件中,实现了主动拒接绝大部分骚扰电话的目的。

不会编程的可以直接看最后一步

说干就干↓↓↓

第一步 越狱你的iOS设备

截止到2016年8月12日,iOS 9-iOS9.3.3的设备都可以越狱,越狱网址为:盘古越狱

第二步 下载插件Kuaidial和搜狗号码通Lite

Kuaidial可以使用Cydia添加雷锋源(http://apt.abcydia.com),然后安装。

搜狗号码通Lite直接在App Store下载即可。

搜狗号码通Lite安装之后,授予通讯录访问权限,然后更新号码数据库。这个时候手机通讯录里就多了10个左右的以haoma开头的联系人。这正是我们要的数据。

搜狗号码通Lite

第三步 导出搜狗号码通Lite的骚扰电话号码

手机连接电脑,打开PP助手,选择haoma开头的联系人,然后点击备份,就会导出一个文件iPhone 6s rose gold_2016_08_12_10_11_39.contacts。

重命名为iPhone 6s rose gold_2016_08_12_10_11_39.contacts.zip,然后解压缩。

搜狗号码通数据库

由于搜狗号码通的数据非常庞大,所以,我们还是一眼就能看出来Contacts_2.plist就是我们要找的文件,因为这个文件比较大。使用notepad++打开之后就会发现是这个文件。

搜狗号码通

第四步 提取出搜狗号码通数据库中的号码

在这里需要写一段代码,来提取出我们需要的信息。


import java.io.*;

public class Converter
{

    public static void main(String[] args)
    {
        String sogouPath = "C:\\Contacts_2.plist";
        System.out.println(printSogouBlockList(sogouPath));
    }

    public static boolean printSogouBlockList(String sogouPath)
    {
        File f = new File(sogouPath);
        BufferedReader br = null;
        try
        {
            br = new BufferedReader(new InputStreamReader(new FileInputStream(f), "UTF-8"));
            String temp = br.readLine();
            while (temp != null)
            {
                if (temp.contains("骚扰电话") || temp.contains("房产中介") || temp.contains("诈骗") || temp.contains("推销"))
                {
                    br.readLine();
                    br.readLine();
                    br.readLine();
                    String numberStr = br.readLine();
                    String number = numberStr.trim().replace("<string>", "").replace("</string>", "").trim();
                    String name = temp.trim().replace("<string>", "").replace("</string>", "").trim();
                    System.out.println("\t<key>" + number + "</key>");
                    System.out.println("\t<string>" + name + "</string>");
                }
                temp = br.readLine();
            }

            return true;
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
        finally
        {
            if (br != null)
            {
                try
                {
                    br.close();
                }
                catch (IOException e)
                {
                    e.printStackTrace();
                }
            }
        }
        return false;
    }

}

运行代码之后,得到的输出就是这样的了。

搜狗号码通

第五步 将输出号码导入到Kuaidial的黑名单中去。

使用PP助手将Kuaidial的黑名单文件/var/mobile/Library/Preferences/kuaidial.black.plist导出到电脑,然后用notepad++打开,将输出结果直接复制到对应的位置上,保存之后,再重新导入到/var/mobile/Library/Preferences/kuaidial.black.plist,覆盖原文件即可生效。

Kuaidial黑名单

此时打开手机,会发现黑名单已经有好几万个了。只要开启挂掉黑名单电话选项,就能屏蔽绝大多数骚扰电话了。

Kuaidial黑名单

Kuaidial黑名单

第六步 已经编辑好的Kuaidial黑名单文件

以上操作的最终文件已经上传到这里。http://download.csdn.net/detail/gane_cheng/9601690

下载下来之后,直接使用PP助手,导入到/var/mobile/Library/Preferences/kuaidial.black.plist,如果没有这个文件的话直接添加,如果已经存在,可以选择直接覆盖,或者把之前的黑名单条目添加进新的文件中再覆盖。

Kuaidial黑名单

所有步骤做完以后,可以卸磨杀驴了。再次点击搜狗号码通Lite APP,点击清除骚扰号码数据库,然后卸载搜狗号码通Lite APP。下次如果想更新数据库,再走一遍这个流程即可。

参考文献

  1. http://blog.sina.com.cn/s/blog_62b1d1490102wfgf.html
阅读更多

没有更多推荐了,返回首页