Android: есть ли способ слушать исходящие смс? - PullRequest
2 голосов
/ 26 апреля 2011

Я знаю, что входящие смс могут быть легко перехвачены с помощью широковещательного приемника.Но я не видел никакого способа перехватить исходящую смс.Как это может быть сделано?Но есть способ сделать это .. Потому что многие сторонние приложения читают как входящие, так и исходящие смс.

1 Ответ

5 голосов
/ 26 апреля 2011

Вам нужно будет сделать что-то вроде этого:

  1. Кэшировать все сообщения хеш-код на телефоне
  2. Регистрация an обозреватель контента для контента: // sms
  3. В onChange методе наблюдателя перечислите все сообщения, чтобы проверить, находится ли он в кеше, если нет, то сообщение отправляется только сейчас.

Удачи в вашем проекте: -)

Редактировать: метод 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;
}
...