因此,作爲主題狀態,我需要能夠在HTC OneX上通過Android 4.0.3以編程方式接聽電話。我已經閱讀了谷歌已經撤銷了MODIFY_PHONE_STATE
許可的幾個地方,所以要執行此任務,您需要解決此問題。如何以編程方式在Android 4.0.3中接聽電話?
我特地爲兩個途徑至今:
(1)隨着蓋伊的職位here並使用一個BroadcastReceiver
(2)使用下面的代碼,試圖通過一個shell命令命中關鍵事件。
final Runtime r = Runtime.getRuntime();
try {
Process process = r.exec("input keyevent 5");
InputStream stream = process.getErrorStream();
log.v("Process Error Stream: " +stream.toString());
log.v("Sending shell command to Answer Call");
} catch (Exception e) {
log.v("Stack Trace: " + e.getStackTrace().toString());
e.printStackTrace();
}
我用這個,因爲KeyEvent的5 KeyEvent.CALL根據谷歌和它使用亞行工作
adb shell input keyevent 5
我的問題是,我究竟做錯了什麼?因爲邏輯上這兩種方法都是有意義的,但它們都不工作,甚至不會產生任何類型的運行時錯誤。
乾杯
我想象這樣的事情會是一個安全/用戶的惡夢,如果他們允許一個電話被回答,製造或以編程方式篡改。 – Phix
我們究竟如何實現這個代碼?只需用'adb shell input keyevent 5'替換'input keyevent 5'? – Naddy