Hi,
I found that pjsip2.5 crashes a lot in iOS 10, I finally got the crash logs. I suspect this maybe because iOS 10 formally forbid keep-alive when app is in background and pjsip keep-alive timer causes that.
So how do I disable keep-alive timer when I want to ? Can just set tcp->ka_timer.id = PJ_FALSE does the job ? But it could be another reason. Any ideas ?
Thanks!
Qiulang
on_connect_complete (sip_transport_tcp.c:1583)
/* Start keep-alive timer */
if (pjsip_cfg()->tcp.keep_alive_interval) {
pj_time_val delay = { 0 };
delay.sec = pjsip_cfg()->tcp.keep_alive_interval;
pjsip_endpt_schedule_timer(tcp->base.endpt, &tcp->ka_timer,
&delay);
tcp->ka_timer.id = PJ_TRUE;
0 libsystem_kernel.dylib 0x000000018a1f6014 __pthread_kill + 8 1 libsystem_pthread.dylib 0x000000018a2bd460 pthread_kill + 108 2 libsystem_c.dylib 0x000000018a16a3f4 abort + 136 3 libsystem_c.dylib 0x000000018a13e40c __assert_rtn + 312 4 ipjsua 0x0000000100a5e170 schedule_w_grp_lock + 776 5 ipjsua 0x0000000100146278 on_connect_complete (sip_transport_tcp.c:1583) 6 ipjsua 0x0000000100a55f54 ioqueue_on_connect_complete + 48 7 ipjsua 0x0000000100a5058c ioqueue_dispatch_write_event + 628 8 ipjsua 0x0000000100a524b4 pj_ioqueue_poll + 720 9 ipjsua 0x00000001002178b4 pjsip_endpt_handle_events2 (sip_endpoint.c:742) 10 ipjsua 0x00000001001b891c pjsua_handle_events (pjsua_core.c:1976) 11 ipjsua 0x00000001001b81d4 worker_thread (pjsua_core.c:701) 12 ipjsua 0x0000000100a535e4 thread_main + 80 13 libsystem_pthread.dylib 0x000000018a2bb860 _pthread_body + 236 14 libsystem_pthread.dylib 0x000000018a2bb770 _pthread_start + 280 15 libsystem_pthread.dylib 0x000000018a2b8dbc thread_start + 0
_______________________________________________ Visit our blog: http://blog.pjsip.org pjsip mailing list pjsip@xxxxxxxxxxxxxxx http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org