Android — полностью удалить SMS с устройства и сделать SMS невосстановимыми

Я хочу удалить все смс с мобильного через свое приложение. В настоящее время я удаляю сообщения, используя приведенный ниже код.

    Uri uriSms = Uri.parse("content://sms/");
        Cursor c = getContentResolver().query(uriSms,
            new String[] { "_id", "thread_id", "address","person", "date", "body" }, null, null, null);

        if (c != null && c.moveToFirst()) {
            do {
                long id = c.getLong(0);
                getContentResolver().delete(Uri.parse("content://sms/" + id), null, null);
            } while (c.moveToNext());
        }

Я могу удалять сообщения с мобильного.

Но с помощью некоторых приложений для восстановления они восстанавливаются.

Я попытался удалить его полностью, удалив файл из пути

"данные/данные/com.android.providers.telephony/базы данных/mmssms.db"

Но это дало мне следующую ошибку отказа в разрешении.

12-12 00:37:29.673: W/System.err(9724): java.io.FileNotFoundException: /data/data/com.android.providers.telephony/databases/mmssms.db (Permission denied)

Как я могу полностью удалить сообщения с моего устройства? Используя какой-то безопасный метод удаления?


person abhi    schedule 12.12.2012    source источник
comment
Если ваше устройство рутировано, вы можете удалить mmssms.db. Но я думаю, что после удаления базы данных вы не сможете хранить сообщения, так как база данных удаляется навсегда. Сделайте резервную копию базы данных и попробуйте.   -  person Basher51    schedule 27.10.2014


Ответы (1)


вы не можете удалить файл, хранящийся в песочнице другого приложения (как com.android.providers.telephony), если устройство не рутировано.

person Pedro Andrade    schedule 04.04.2013