我正在开发一款Android应用程序,并想知道如何接收来电。 我已经创建了一个广播接收器,在其onReceive方法中使用倒计时定时器对呼叫状态铃声设置了15秒延迟。现在,我希望在倒计时定时器完成方法中接收来电。我没有找到任何实现它的方法。有人可以提供建议吗? 谢谢!
我正在开发一款Android应用程序,并想知道如何接收来电。 我已经创建了一个广播接收器,在其onReceive方法中使用倒计时定时器对呼叫状态铃声设置了15秒延迟。现在,我希望在倒计时定时器完成方法中接收来电。我没有找到任何实现它的方法。有人可以提供建议吗? 谢谢!
不要使用倒计时计时器,而是设置一次性闹钟,然后触发您的方法以接收呼叫。您可以像这样做:
AlarmManager alarm = (AlarmManager) this.getSystemService(Context.ALARM_SERVICE);
Intent cHandler = new Intent (this, CallHandlers.class);
PendingIntent pi = PendingIntent.getBroadcast(this, 0, cHandler, PendingIntent.FLAG_CANCEL_CURRENT);
//Set an alarm that will trigger in 15 seconds
alarm.set(AlarmManager.RTC_WAKEUP,System.currentTimeMillis() + (15 * 1000), pi);
你可以使用一个倒计时器,访问http://developer.android.com/reference/android/os/CountDownTimer.html
new CountDownTimer(15000, 1000) {
public void onTick(long millisUntilFinished) {
//here you can have your logic for call
}
public void onFinish() {
mTextField.setText("done!");
}
}
.start();
如果需要一个工作代码示例来实现倒计时器,请访问http://www.filefactory.com/file/cbbbc38/n/SimpleCountDownTimerExample.zip。