¿Bloquear SMS entrantes en Android con Android 4.4 o superior?

De acuerdo con el doc :

Tenga en cuenta que, a partir de Android 4.4, cualquier intento de su aplicación para abortar la transmisión SMS_RECEIVED_ACTION se ignorará para que todas las aplicaciones interesadas tengan la oportunidad de recibirla.

Por lo que sólo la aplicación por defecto de SMS puede hacerlo y parece que nada se cambia con Android 5.0 (debido a la razón desconocida, de acuerdo con el problema se marca como obsoleto).

¿Hay alguna manera de bloquear los SMS entrantes para la aplicación de SMS no predeterminada si el teléfono está enraizado (esto es necesario para la aplicación de bloqueo de spam)? ¿Cómo hacerlo?

Puede escribir un servicio que reemplace a CarrierMessagingService . Si el enlace a esto es correcto, el mensaje no se entrega a la aplicación principal.

BIND_CARRIER_MESSAGING_SERVICE permiso BIND_CARRIER_MESSAGING_SERVICE necesario para registrarse como servicio de mensajería de operador requiere que la aplicación sea la aplicación del sistema. Por lo que necesita para empujar su aplicación en el sistema.

Haga de su aplicación el proveedor de SMS predeterminado. Entonces puede registrarse para SMS_DELIVER_ACTION. En ese receptor, puede elegir escribir el SMS a la base de datos o no. Si decide no hacerlo, el SMS es básicamente ignorado. Si lo desea, cualquier otra aplicación puede recibir el SMS.

Puede probar la siguiente solución:

Iterar a través de la lista de paquetes capaces de manejar SMS y deshabilitarlos mediante programación.

Para obtener una API para deshabilitar una aplicación, tendrá que convertirse en una aplicación de socio de MDM (Mobile Device Management). OEM proporciona API adicionales a sus aplicaciones de socio de MDM para controlar el dispositivo. Por ejemplo, samsung proporciona api para deshabilitar la aplicación específica. También tienen API para controlar el permiso de aplicaciones específicas.

Alternativamente, supongo que el nuevo modo Android Device / Profile Owner debe tener una API para deshabilitar aplicaciones específicas.

  • Mensaje de autocompletado en Phonegap / Cordova iOS y Android
  • ¿Cómo leer el contenido del mensaje de un mensaje nuevo en el próximo mensaje en android?
  • Registrar BroadcastReceiver para SMS entrantes
  • Excepción de puntero nulo, Parcel.ReadException al enviar SMS?
  • ¿Necesito anular el registro de 'anonymous' BroadcastReceiver
  • Estado de sms de Android
  • Content: // mms-sms / conversations / return NullPointerException en Android ICS Samsung
  • Cómo obtener el número smsc de un teléfono en android?
  • Enviar y leer el contenido de SMS enviado a través de la aplicación nativa de SMS cordova
  • ¿Cómo puedo enviar mensajes SMS en el BACKGROUND usando Android?
  • ¿Cuáles son los significados de los valores en el proveedor de contenidos "content // sms /" de Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.