Исключение: кто звонит? во время звонка в ПЖСУ
Я реализую PJSUA2 в моем Android-приложении для VoIP-вызова. Исходя из требований приложения, иногда я пытаюсь сделать быстрые вызовы, например, начать вызов и отсоединить его в течение 1 секунды, а затем повторить попытку подключения. Во время этого мое приложение падает после нескольких раз непрерывных вызовов и отключения (около 5- 10 секунд). Я получаю исключение, говорящее: java.lang.Exception: кто звонит?
Я использую только UDP для вызовов VoIP и прокомментированных каналов TCP и TSL, поскольку он использовал для исключения транспорта, не поддерживаемого в том же сценарии (непрерывные вызовы). Я опубликую свою настройку транспорта ниже. Пожалуйста, посмотрите:
/* Create transports. */
try {
ep.transportCreate(pjsip_transport_type_e.PJSIP_TRANSPORT_UDP,
sipTpConfig);
} catch (Exception e) {
System.out.println(e);
Log.d("excmicbutton","1st"+e.getMessage());
}
// try {
// ep.transportCreate(pjsip_transport_type_e.PJSIP_TRANSPORT_TCP,
// sipTpConfig);
// } catch (Exception e) {
// System.out.println(e);
// Log.d("excmicbutton","2nd"+e.getMessage());
// }
//
// try {
// sipTpConfig.setPort(SIP_PORT +1);
// ep.transportCreate(pjsip_transport_type_e.PJSIP_TRANSPORT_TLS,
// sipTpConfig);
// } catch (Exception e) {
// System.out.println(e);
// Log.d("excmicbutton","3rd"+e.getMessage());
// }
/* Set SIP port back to default for JSON saved config */
sipTpConfig.setPort(SIP_PORT);
/* Create accounts. */
for (int i = 0; i < accCfgs.size(); i++) {
MyAccountConfig my_cfg = accCfgs.get(i);
/* Customize account config */
my_cfg.accCfg.getNatConfig().setIceEnabled(true);
my_cfg.accCfg.getVideoConfig().setAutoTransmitOutgoing(true);
my_cfg.accCfg.getVideoConfig().setAutoShowIncoming(true);
MyAccount acc = addAcc(my_cfg.accCfg);
if (acc == null)
continue;