Не удается удалить контакты с SIM-карты.

У меня проблема с удалением контактов, которые я ранее создал на SIM-карте.

Прежде всего, я проверяю, какие значения хранятся в БД следующим образом:

private static final Uri URI_ICC_ADN = Uri.parse("content://icc/adn/"); private ContentResolver mContentResolver = this.getContentResolver(); Cursor c = mContentResolver.query(URI_ICC_ADN, null, null, null, null); c.moveToFirst(); while(c.moveToNext()) { Log.i(LOG_TAG, "name = " + c.getString(c.getColumnIndex("name"))); } 

И это дает мне эти журналы:

 name = 1 name = 2 name = 3 name = 1 name = 2 name = 5 // etc 

Это означает, что записи с name = 1 существуют в БД. Теперь я пытаюсь удалить эти записи с помощью этого кода:

 int rowsDeleted = mContentResolver.delete(URI_ICC_ADN, "name=?", new String[] { "1" }); 

Но, к сожалению, эти строки не удаляются – rowsDeleted равно 0 . Я также пробовал это:

 int rowsDeleted = mContentResolver.delete(URI_ICC_ADN, "name=1", null); 

Но результат тот же. Что я делаю не так?

«Name» – только для чтения. Для удаления вам нужно передать «тег» для столбца имен. Проверьте эту ссылку для фактической реализации IccProvider