Android:有没有办法听外出的短信?

时间:2011-04-26 08:39:53

标签: android sms intercept

我知道使用广播接收器可以轻松拦截传入的短信。但我没有看到任何方法来拦截传出的短信。如何才能做到这一点?但有一种方法可以做到这一点..因为许多第三方应用程序读取传入和传出的短信。

1 个答案:

答案 0 :(得分:5)

你必须做这样的事情:

  1. 在手机上缓存所有邮件的哈希码
  2. 注册 content observer以获取内容:// sms
  3. 在观察者的 onChange 方法中,枚举所有消息以检查它是否在缓存中,如果不是,则立即发送消息。
  4. 祝你的项目好运: - )

    编辑:md5方法
    您可以使用(到达日期+消息)文本来获得唯一的md5输出。

    private String md5(String in) {
        MessageDigest digest;
        try {
            digest = MessageDigest.getInstance("MD5");
            digest.reset();        
            digest.update(in.getBytes());
            byte[] a = digest.digest();
            int len = a.length;
            StringBuilder sb = new StringBuilder(len << 1);
            for (int i = 0; i < len; i++) {
                sb.append(Character.forDigit((a[i] & 0xf0) >> 4, 16));
                sb.append(Character.forDigit(a[i] & 0x0f, 16));
            }
            return sb.toString();
        } catch (NoSuchAlgorithmException e) { e.printStackTrace(); }
        return null;
    }