我正在 Android 上开发基于 pjsip 的 SIP 客户端(我现在使用 csipsimple 代码作为参考)。
当我尝试注册帐户时,我收到以下错误:
无法为注册生成合适的联系人标头:不支持的传输 (PJSIP_EUNSUPTRANSPORT)
我的代码和这里的代码几乎一样 sipServer 字符串是注册商的 ip 地址“192.168....”
我还尝试不指定以下代码中的传输方法:
int[] accId = new int[1];
accId[0] = 1;
pjsua_acc_config cfg = new pjsua_acc_config();
pjsua.acc_config_default(cfg);
csipsimple_acc_config css_cfg = new csipsimple_acc_config();
pjsua.csipsimple_acc_config_default(css_cfg);
cfg.setPriority(10);
cfg.setId(pjsua.pj_str_copy("sip:" + sipUser + "@" + sipServer));
cfg.setReg_uri(pjsua.pj_str_copy("sip:" + sipServer));
cfg.setReg_timeout(60);
cfg.setCred_count(1);
cfg.setPublish_enabled(0);
cfg.setReg_delay_before_refresh(-1);
cfg.setUse_timer(pjsua_sip_timer_use.PJSUA_SIP_TIMER_OPTIONAL);
pjsua.csipsimple_set_acc_user_data(cfg, css_cfg);
status = pjsua.acc_add(cfg, pjsuaConstants.PJ_FALSE, accId);
错误是:
E/libpjsip(20934): pjsua_acc.c ..无法为注册生成合适的联系人标头:不支持的传输 (PJSIP_EUNSUPTRANSPORT) [status=171060]
当然,在此之后,wireshark 上没有任何痕迹:lib 在发送任何数据之前就放弃了。
谢谢