如何通过 adb 外壳或关键事件应答来电



我正在尝试使用Intent接听来电,如下所示:

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

谁能说出我哪里出错了...请帮忙.

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

查看在安卓中接听来电

查看源代码

试试这个。它对我来说工作正常。

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");  
}

最新更新