Tengo el código para obtener el número de la llamada entrante a un teléfono Android. Pero quiero responder automáticamente a la llamada cuando la llamada entrante proviene de un número en particular.¿Contestar automáticamente la llamada entrante por programación?
me encontré con este código en el Internet:
public class ServiceReceiver extends BroadcastReceiver {
private static final String TAG = null;
@SuppressWarnings({"unchecked", "rawtypes"})
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "GOT SOMETHING", Toast.LENGTH_SHORT).show();
MyPhoneStateListener phoneListener = new MyPhoneStateListener();
TelephonyManager telephony = (TelephonyManager)
context.getSystemService(Context.TELEPHONY_SERVICE);
telephony.listen(phoneListener, PhoneStateListener.LISTEN_CALL_STATE);
Bundle bundle = intent.getExtras();
String phoneNr = bundle.getString("incoming_number");
Log.v(TAG, "phoneNr: " + phoneNr);
String numb = "+4348873541";
Class c = Class.forName(telephony.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);
if (phoneNr.equals(numb)) {
ITelephony telephonyService = (ITelephony) m.invoke(telephony);
telephonyService = (ITelephony) m.invoke(telephony);
telephonyService.silenceRinger();
telephonyService.answerRingingCall();
}
}
}
¿Me podría decir cómo automático responder a la llamada de un número en particular?
He intentado este código, pero parece que no funciona. Estoy usando Samsung Galaxy, la versión de Android 2.2. ¿Crees que es por la versión? – android
¿Has comprobado el Logcat? – Tiago
Lamentablemente, la solución Bluetooth no funciona en todos los casos: http://stackoverflow.com/a/26195140/1770426 – user1770426