如何检查拨打的号码是忙还是未应答?

时间:2012-07-10 15:09:34

标签: android phone-call telephony telephonymanager

我使用以下代码拨打号码:

DataBaseHelper db;
db=new DataBaseHelper(PanicService.this);
try {

    db.createDataBase();

    } catch (IOException ioe) {

    throw new Error("Unable to create database");

    }

Map<String, String > map= db.TelephoneList();
String[] numbers = new String[]{"number1","number2","number3","number4","number5"};


Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:"+map.get(numbers[0])));
callIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(callIntent);

工作正常。 现在我需要知道拨打的号码是忙还是未应答,然后拨打列表中的下一个号码。我只是想知道是否还有检测呼叫的状态?

我已经检查了这个网址http://developer.android.com/reference/android/telephony/TelephonyManager.html但除了CALL_STATE_OFFHOOK之外我找不到任何关于这个概念的内容,这不是我想要的。

1 个答案:

答案 0 :(得分:1)

您无法确定移动网络上的拨出电话是否已应答,因为移动网络未向移动电话提供此信息,即使是这样,Android也无法提供接收方式。

虽然可以确定是否已经回答了传出的Internet(SIP)呼叫,但Android目前没有(从Jelly Bean开始)提供了一种方法,我可以通过快速查看源代码找到它。 / p>