Мое приложение выполняет вызов сохраненного номера, этот номер обязан отклонить вызов. Как я могу имитировать отклоненный исходящий звонок в эмуляторе? Я использую eclipse indigo IDE. Все действия полностью управляются программой. Есть процессы, которые должны выполняться после отклонения вызова.
Вы можете использовать 2 эмулятора, набирать номер порта одного из них (например, 5556), отклонять вызов в этом эмуляторе, и он будет установлен на эмуляторе, размещающем вызов.
Вы можете использовать перспективу DDMS для достижения этой цели. Goto DDMS → Управление эмулятором → Введите входящий номер, который вы уже сохранили в эмуляторе, и сделайте вызов.
public class PhoneStateListenerActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
PhoneStateListener listener;
TelephonyManager manager;
manager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
listener = new PhoneStateListener(){
public void onCallStateChanged(int state, String incomingNumber) {
String stateString = "N/A";
switch (state) {
case TelephonyManager.CALL_STATE_IDLE:
stateString = "Idle";
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
stateString = "Off Hook";
break;
case TelephonyManager.CALL_STATE_RINGING:
stateString = "Ringing";
break;
}
Toast.makeText(PhoneStateListenerActivity.this, stateString, Toast.LENGTH_SHORT)
.show();
}
};
manager.listen(listener, PhoneStateListener.LISTEN_CALL_STATE);
}
}