Borrar y modificar elementos de un ContentProvider
Puedes utilizar el método delete() para eliminar elementos de un ContentProvider:
int ContentProvider.delete(Uri uri, String seleccion,
String[] argsSelecc)
Este método devuelve el número de elementos eliminados. Los tres parámetros del método se detallan a continuación:
uri URI correspondiente al ContentProvider a consultar.
seleccion Clausula SQL correspondiente a WHERE.
argsSelecc Lista de argumentos utilizados en el parámetro seleccion.
Si quisiéramos eliminar un solo elemento podríamos obtener su URI e indicarlo en el primer parámetro, dejando los otros dos a null. Si por el contrario quieres eliminar varios elementos puedes utilizar el parámetro seleccion. Por ejemplo, si quisiéramos eliminar todos los registros de llamada del número 555555555, escribiríamos:
getContentResolver().delete(Calls.CONTENT_URI,
"number='555555555'", null);
También puedes utilizar el método update() para modificar elementos de un ContentProvider:
int ContentProvider.update(Uri uri, ContentValues valores,
String seleccion, String[] argsSelecc)
Por ejemplo, si quisiéramos modificar los registros con número 555555555, por el número 444444444, escribiríamos:
ContentValues valores2 = new ContentValues();
valores2.put(Calls.NUMBER, "444444444");
getContentResolver().update(Calls.CONTENT_URI, valores2,
"number='555555555'", null);