0

各位开发者您好,

我正在使用 PJSIP 库开发 SIP 应用程序...这是我的代码

这是我的 Logcat日志

问题是应用程序没有尝试进行注册,并且根本没有错误......(或者我错过了什么?)

并登录我的 Kamailio 服务器(当我的设备尝试连接并记录卡住时,没有任何反应):

22(32406) DEBUG: <core> [ip_addr.c:229]: print_ip(): tcpconn_new: new tcp connection: 192.168.0.150
22(32406) DEBUG: <core> [tcp_main.c:985]: tcpconn_new(): on port 17749, type 3
22(32406) DEBUG: <core> [tcp_main.c:1295]: tcpconn_add(): hashes: 879:4076:3775, 50
22(32406) DEBUG: <core> [io_wait.h:376]: io_watch_add(): DBG: io_watch_add(0x9f8540, 44, 2, 0x7f6cdbbf3948), fd_no=34

附言。我用现成的客户端测试了服务器,一切正常......

提前致谢 :)

4

1 回答 1

0

我已经解决了问题...

问题在于在另一个线程中注册 PJSIP ......我正在使用主线程并在 MainActivity 中的 OnCreate() 事件上初始化连接。这意味着,在 OnCreate() 触发并完成其工作之后,初始化过程在连接到服务器之前就被破坏了......

我做了什么:

前:

UaConfig ua_cfg = epConfig.getUaConfig();
ua_cfg.setUserAgent("Pjsua2 Android " + ep.libVersion().getFull());
ua_cfg.setThreadCnt(0);
ua_cfg.setMainThreadOnly(true);

后:

UaConfig ua_cfg = epConfig.getUaConfig();
ua_cfg.setUserAgent("Pjsua2 Android " + ep.libVersion().getFull());

删除这些行会使 PJSIP 库创建自己的工作线程......

于 2015-12-21T08:21:04.463 回答