¿Cómo hacer que el número no sea accesible (similar al bloqueador de llamadas)?

Hay mucho de la aplicación de bloqueo de llamadas para móviles, como NQ Call Blocker. Pero en estas aplicaciones, si añadimos un número a la lista negra, la persona que llama oirá "Tono ocupado". También la persona que llama puede escuchar "Tono de timbre" durante una fracción de segundo. Lo que significa que parecería que estamos rechazando la llamada intencionalmente.

Ahora, lo que estoy tratando es, para desarrollar una aplicación de bloqueo de llamadas, que puede enviar "No Alcanzable Tono", en lugar de "Busy Tone" … ??

Por ejemplo, llame a su móvil desde otro número, cuando esté sonando, trate de cambiar su modo a "Modo Avión". Escuchará "Tono No Alcanzable". [Posible en algún dispositivo android, presione el botón de encendido y active "Modo Avión", cuando el teléfono esté sonando.]

Usted podría intentar implementar un PhoneStateListener y cuando usted recibe una llamada usted la compara a usted arsenal de números, si está prohibido usted cambia al modo del airplaine. Algo como esto:

case TelephonyManager.CALL_STATE_RINGING: // incoming call { for (int i = 0; i < forbiddenNumber.size; i++) { if (incomingNumber.equals(forbiddenNumber[i])) { // read the airplane mode setting boolean isEnabled = Settings.System.getInt( getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0) == 1; // toggle airplane mode Settings.System.putInt(getContentResolver(), Settings.System.AIRPLANE_MODE_ON, isEnabled ? 0 : 1); // Post an intent to reload Intent intent = new Intent( Intent.ACTION_AIRPLANE_MODE_CHANGED); intent.putExtra("state", !isEnabled); sendBroadcast(intent); } } 

No olvide el permiso de WRITE_SETTINGS

La señal "Not Reachable" no es enviada por su teléfono. En su lugar, es enviado por su compañía.

Cuando su número no es accesible, literalmente significa que la torre celular no puede llegar a usted. Así que cuando alguien te llama, la torre trata de encontrarte, y si no puede enviar la señal "No alcanzable" por la línea. No se puede falsificar uno y enviarlo desde su dispositivo en su lugar.

Puesto que usted no puede hacer esto, como señala Raghav, su próxima línea probable de pensamiento será fingir los tonos de control DTMF portadora, por ejemplo, la red ocupada, número de teléfono desconectado, etc

Pronto descubrirá que su aplicación no puede hacer eso tampoco … no puede "falsificar" tonos DTMF hasta la línea – ni antes de la llamada se responde (porque usted no es la compañía de teléfonos), ni después de que sea Respondió, que muchos consideran una supervisión por google-android. Muchos posts aquí sobre ambos.

Sí, por supuesto, podemos introducir manualmente DTMF (o no podríamos llamar a las extensiones, punch en los números de cuenta, etc) es sólo que una APP no puede hacer que automágicamente … mucho a la molestia de muchos desarrolladores de PBX . Lo sentimos, esto es lamentable para todos nosotros …

  • Algunos dispositivos Android extremadamente lentos al representar elementos de lienzo
  • Android / javascript - problema con window.innerWidth y window orientationEvent disparando en el momento adecuado
  • La mejor manera de recuperar / formatear datos mediante Firebase Java API
  • Mejor solución de desarrollo móvil multiformato C ++?
  • Elemento HTML5 <video> en Android
  • ¿Es la mejor práctica para subir archivos a CDN mientras desarrolla aplicaciones móviles?
  • FB.getLoginStatus nunca activa la devolución de llamada en navegadores móviles
  • Aplicación para móviles: orientada a iPhone, WP7, Android y Blackberry
  • Problema de detección de cambio de orientación del dispositivo
  • SMS raw pdu en Android
  • Error de conexión de Web Socket desde el cliente Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.