¿Receptor de difusión de Android para mensajes SMS enviados?

Creé un BroadcastReceiver y lo configuré con un filtro de acción android.provider.Telephony.SMS_RECEIVED , por lo que se lo llama cada vez que el teléfono recibe un mensaje de texto.

¿Hay algún evento / acción u otra forma para que mi aplicación sea notificada cada vez que el teléfono envía un texto (preferiblemente independiente de la aplicación que lo envía)?

Hasta ahora, la única opción que veo es sondear al proveedor de content://sms/sent por el content://sms/sent que ni siquiera me da todos los textos enviados porque las aplicaciones pueden elegir no ponerlo allí.

Desafortunadamente, (actualmente) no hay forma de implementar un BroadcastReceiver porque la aplicación de SMS estándar usa un SmsManger para enviar los mensajes, pero especifica clases internas concretas para los bashs enviados y entregados ( SmsReceiver.class y MessageStatusReceiver.class respectivamente). No es que sirva de consuelo, pero puede encontrar el siguiente comentario en la fuente de la aplicación Sms:

 // TODO: Fix: It should not be necessary to // specify the class in this intent. Doing that // unnecessarily limits customizability. 

La mejor alternativa parece ser el content://sms/sent sondeo content://sms/sent , posiblemente utilizando un ContentObserver .