我正在开发一个应用程序,我想在几秒钟后自动接受来电。我使用电话管理器Intent尝试了很多代码,但5.0中没有任何工作。当我的应用程序打开时,以下代码正常工作。但在我的后台应用程序中,代码无效。
new Thread(new Runnable() {
@Override
public void run() {
try {
Runtime.getRuntime().exec( "input keyevent " + KeyEvent.KEYCODE_HEADSETHOOK );
}
catch (Throwable t) {
// do something proper here.
}
}
}).start();
请任何人帮助我,我正在使用Thread。
提前致谢。
答案 0 :(得分:0)
在你的清单中添加:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
和
<receiver android:name=".CallReceiver">
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
创建一个名为CallReceiver
的扩展BroadcastReceiver
实施onReceive
并实例化PhoneStateListener
你需要实现和处理这样的监听器,例如看看这个教程:
http://www.tutorialforandroid.com/2009/01/get-phone-state-when-someone-is-calling_22.html
收到CALL_STATE_RINGING