Wie kann ich einen Anruf in Android 4.0.3 programmgesteuert beantworten?
Wie im Betreff angegeben, muss ich in der Lage sein, einen Anruf in Android 4.0.3 auf einem HTC OneX programmgesteuert zu beantworten. Ich habe an mehreren Stellen gelesen, dass dieMODIFY_PHONE_STATE
Die Erlaubnis wurde von Google widerrufen. Um diese Aufgabe ausführen zu können, müssen Sie einen Workaround durchführen.
Ich habe bisher zwei Wege untersucht:
(1) Nach dem Posten von GuyHier und mit einem BroadcastReceiver
(2) Verwenden Sie den folgenden Code, um zu versuchen, ein Schlüsselereignis über einen Shell-Befehl zu treffen.
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();
}
Ich benutze dies, weil keyevent 5 laut Google KeyEvent.CALL ist und es in adb funktioniert
adb shell input keyevent 5
Meine Frage ist, was mache ich falsch? Weil logischerweise beide Methoden sinnvoll sind, aber weder funktionieren noch Laufzeitfehler generieren.
Prost