samsung - Android: respuesta automática de llamada entrante, reproducir un archivo de audio
como grabar una llamada en un samsung (4)
De lo que estás hablando no es exactamente posible con Android. Android no tiene acceso a la transmisión de audio durante la llamada.
Aunque puedo darte un poco de idea sobre cómo hacerlo.
Primero para interceptar una llamada entrante, debe registrar un receptor de difusión, que se invoca cada vez que se recibe una llamada.
public void onReceive(final Context context, Intent intent)
{
TelephonyManager telephonyManager = null;
PhoneStateListener listener = new PhoneStateListener()
{
public void onCallStateChanged(int state, String incomingNumber)
{
switch (state)
{
case TelephonyManager.CALL_STATE_IDLE:
Toast.makeText(context, "Call Ended..", Toast.LENGTH_LONG).show();
Log.i("stop", "Call Ended....");
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
Toast.makeText(context, "Call Picked..", Toast.LENGTH_LONG) .show();
Log.i("received", "Call Picked....");
break;
case TelephonyManager.CALL_STATE_RINGING:
Toast.makeText(context, "Call Ringing.." + incomingNumber,5000).show();
break;
}
}
};
// Register the listener with the telephony manager
telephonyManager.listen(listener, PhoneStateListener.LISTEN_CALL_STATE);
También cambia tu manifiesto,
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<receiver android:name="MyReceiver">
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
</receiver>
</application>
Con esto, puede interceptar la llamada entrante y seleccionar la llamada, ahora puede intentar reproducir un archivo mp3 en la
case TelephonyManager.CALL_STATE_OFFHOOK:
// Play mp3 file here
break;
Espero eso ayude. Debo intentar esto y contarme la experiencia.
En Android, en el momento de una llamada entrante, quiero recibirla. Luego, desde mi aplicación, reproducir automáticamente un archivo de audio durante una llamada y la otra persona debería escucharlo. es posible?
En Android, no hay opción de jugar contra una llamada en vivo o cambiar la fuente de audio a otro que no sea el Mic predeterminado. Aquí hay detalles que explican por qué no puedes reproducir grabaciones durante una llamada en vivo.
Sin embargo hay algunos trucos,
- ¡Puede reproducir la grabación deseada desde el altavoz móvil, durante una llamada! ¿Un Mic lo recogerá de allí?
- O puede interconectar los cables de un altavoz de manos libres a su cable de micrófono
- O use bluetooh desde algún otro dispositivo para reproducir la grabación deseada
Intente usar el administrador de telefonía, contiene los eventos que está buscando:
No se puede reproducir nada directamente a la persona que llama. Si quieres, puedes tocar a través de un altavoz, pero eso no es realmente lo que quieres. Así que "no", no puedes hacer eso.