Red de conocimiento informático - Conocimiento informático - ¿Puedo rechazar llamadas de la lista negra en mi teléfono Android?

¿Puedo rechazar llamadas de la lista negra en mi teléfono Android?

Poder.

Mientras tu teléfono esté encendido y tenga señal, podrás recibir los mensajes de la otra parte. Cuando se configura para rechazar llamadas o lista negra, si la otra parte envía un mensaje de texto, el teléfono aún puede recibir el mensaje de texto y el mensaje de texto se guardará en la lista negra de su teléfono o en el registro de llamadas rechazadas. Además, también hay llamadas rechazadas. registros y registros de interceptación de mensajes de texto.

La interceptación de SMS es en realidad un elemento relativamente simple y hay muchas introducciones relacionadas. Aquí presentamos principalmente algunos problemas encontrados en el proceso de escritura en Internet.

En primer lugar, el principio de implementación de la interceptación de SMS es monitorear la transmisión de mensajes SMS y luego determinar el número del mensaje SMS para determinar si está en la lista negra. Si es así, utilice abortBroadcast. método para finalizar el envío de la emisión. El problema más importante en el proceso no es recibir monitoreo, sino recibir monitoreo primero, porque la transmisión de SMS es una transmisión ordenada, por lo que quien reciba la transmisión primero tendrá derecho a finalizar la transmisión, por lo que nosotros Lo que realmente Lo que debemos hacer es encontrar una manera de maximizar nuestro permiso para recibir transmisiones. Aquí hay dos métodos principales. Uno es establecer el valor de permiso máximo y el otro es configurar el método de registro en registro dinámico.

Establecer el valor de permiso máximo en realidad significa establecer la prioridad de la transmisión de registro al máximo. El valor de permiso máximo descrito en la API del sistema Android es 1000, pero lo que realmente se recibe es un valor int. system El valor en línea de este valor no será juzgado, por lo que podemos establecer el valor máximo de este int, y este permiso es el más alto.

Entonces, si todos tienen permisos máximos y sus prioridades son muy altas, entonces el segundo punto es registrar dinámicamente al oyente, porque la transmisión registrada dinámicamente en el código fuente es la escucha antes que el oyente de transmisión estática. lista, por lo que utilizamos el registro dinámico para configurar el oyente aquí.

Entonces, si todos usamos el método de registro dinámico, ¿quién lo recibirá primero? Esto parece estar relacionado con el nombre del paquete de la aplicación. No conozco los detalles. Probablemente significa que el anterior. Cuanto mayor sea el tiempo de instalación, cuanto mayor sea la prioridad, mayor será el orden de los alias del nombre del paquete en el sistema y mayor será la prioridad (no el orden alfabético de los nombres de los paquetes que escribimos).

Entonces, echemos un vistazo al método de implementación específico. Primero, cree un servicio y luego asegúrese de que el servicio siempre se esté ejecutando en segundo plano (puede usar demonios, escuchar transmisiones de inicio, etc.) asegúrese de que siempre exista), luego registre la transmisión y cancele el registro respectivamente en los métodos onStartCommand y onDestroy del servicio.

Este servicio se ejecuta en segundo plano.