/* 内部class继承PhoneStateListener */
public class exPhoneCallListener extends PhoneStateListener
{
/* 重写onCallStateChanged当状态改变时改变myTextView1的文字及颜色 */
public void onCallStateChanged(int state, String incomingNumber)
{
switch (state)
{
/* 无任务状态时 */
case TelephonyManager.CALL_STATE_IDLE:
myTextView1.setTextColor(getResources().getColor(R.drawable.red));
myTextView1.setText("CALL_STATE_IDLE");
break;
/* 接起电话时 */
case TelephonyManager.CALL_STATE_OFFHOOK:
myTextView1.setTextColor(getResources().getColor(R.drawable.green));
myTextView1.setText("CALL_STATE_OFFHOOK");
break;
/* 电话进来时 */
case TelephonyManager.CALL_STATE_RINGING:
getContactPeople(incomingNumber);
break;
default:
break;
}
super.onCallStateChanged(state, incomingNumber);
}
public class exPhoneCallListener extends PhoneStateListener
{
/* 重写onCallStateChanged当状态改变时改变myTextView1的文字及颜色 */
public void onCallStateChanged(int state, String incomingNumber)
{
switch (state)
{
/* 无任务状态时 */
case TelephonyManager.CALL_STATE_IDLE:
myTextView1.setTextColor(getResources().getColor(R.drawable.red));
myTextView1.setText("CALL_STATE_IDLE");
break;
/* 接起电话时 */
case TelephonyManager.CALL_STATE_OFFHOOK:
myTextView1.setTextColor(getResources().getColor(R.drawable.green));
myTextView1.setText("CALL_STATE_OFFHOOK");
break;
/* 电话进来时 */
case TelephonyManager.CALL_STATE_RINGING:
getContactPeople(incomingNumber);
break;
default:
break;
}
super.onCallStateChanged(state, incomingNumber);
}
}
///
/* 新增的PhoneStateListener */
exPhoneCallListener myPhoneCallListener = new exPhoneCallListener();
/* 取得电话服务 */
TelephonyManager tm = (TelephonyManager) this
.getSystemService(Context.TELEPHONY_SERVICE);
/* 注册Listener */
tm.listen(myPhoneCallListener, PhoneStateListener.LISTEN_CALL_STATE);