user
user

Reputation: 65

How to Answer incoming call through adb shell or keyevent

I am trying to answer an incoming call using Intent as below :

device.shell("am start -n com.android.phone/.InCallScreen -a android.intent.action.ANSWER")        

can anyone please tell where am i going wrong ... please help .

Upvotes: 0

Views: 3673

Answers (2)

Jebasuthan
Jebasuthan

Reputation: 5604

Try this. Its working fine for me.

public static void answerCall(Context context) {

     Intent buttonDown = new Intent(Intent.ACTION_MEDIA_BUTTON);       
     buttonDown.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_HEADSETHOOK));
     context.sendOrderedBroadcast(buttonDown, "android.permission.CALL_PRIVILEGED");             

    // froyo and beyond trigger on buttonUp instead of buttonDown
    Intent buttonUp = new Intent(Intent.ACTION_MEDIA_BUTTON);
    buttonUp.putExtra(Intent.EXTRA_KEY_EVENT,
      new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_HEADSETHOOK));
    context.sendOrderedBroadcast(buttonUp, "android.permission.CALL_PRIVILEGED");  
}

Upvotes: 0

user
user

Reputation: 65

device.press("KEYCODE_CALL","DOWN")

Upvotes: 1

Related Questions