Sería más dependiente del operador y relacionado con la red, además, la API programática no está bien documentada, por lo tanto, muchas aplicaciones de bloqueo de llamadas de terceros, inevitablemente, envían un rechazo / bloqueo al recibir un número en la lista negra.
Lo que el OP está pidiendo es, en realidad, profundizar en los aspectos básicos de la capa de telefonía que se bloquea debido a:
- naturaleza propietaria del código de soporte binario que habilita la telefonía GSM / CDMA.
- chipset patentado utilizado para comunicaciones GSM / CDMA a bajo nivel.
Si eso estuviera disponible y documentado, habría muchas aplicaciones de bloqueo de llamadas en Play Store, que pueden hacer la detección de llamadas de la manera adecuada que se esperaría.
Editar
Como una ocurrencia tardía de esta respuesta, debe tenerse en cuenta una parte vital: Google bloqueó el MODIFY_PHONE_STATE
permiso en Gingerbread 2.3.7 en adelante ( estaba disponible en versiones anteriores de Android ), vea este problema que molestó a los desarrolladores de ese software de bloqueo de llamadas de terceros, por lo tanto call-block fallará en las versiones más recientes de Android, ese permiso es lo que permitió a las aplicaciones de terceros enviar un rechazo / bloqueo al recibir dicho número en la lista negra.