2015-10-03 5 views
0

Я делаю свое приложение с PJSIP, а PJ_LOG не работает (работает с вызовом).PJSIP не регистрируется (Android)

Код ниже, пожалуйста, ПОМОГИТЕ !!! Спасибо!

status = pjsua_create(); 
if (status != PJ_SUCCESS) error_exit("Error in pjsua_create()", status); 
/* Init pjsua */ 
{ 
pjsua_config cfg; 
pjsua_logging_config log_cfg; 

pjsua_config_default(&cfg); 
pjsua_logging_config_default(&log_cfg); 
cfg.cb.on_incoming_call = &on_incoming_call; 
cfg.cb.on_call_media_state = &on_call_media_state; 
cfg.cb.on_call_state = &on_call_state; 

__android_log_print(ANDROID_LOG_DEBUG,"INIT","PJ_LOG_MAX_LEVEL %d", PJ_LOG_MAX_LEVEL); //PRINT 5!!! 

status = pjsua_init(&cfg, &log_cfg, 0); 

if (status != PJ_SUCCESS) error_exit("Error in pjsua_init()", status); 
} 
__android_log_print(ANDROID_LOG_DEBUG,"INIT","PJ_LOG_MAX_LEVEL %d", PJ_LOG_MAX_LEVEL);//PRINT 5!!! 

PJ_LOG(1,(THIS_FILE, "Trying log %d", 1));//NOT PRINTING 
PJ_LOG(2,(THIS_FILE, "Trying log %d", 2)); 
PJ_LOG(3,(THIS_FILE, "Trying log %d", 3)); 
PJ_LOG(4,(THIS_FILE, "Trying log %d", 4)); 
+0

вы можете помочь мне компиляции pjsip –

ответ

0

Проблема у вас есть разные инструменты ведения журнала с использованием (android и pjsip). Для android вы должны использовать только __android_log_print. Никаких других работ. Но поймать pjsip регистрации выхода вы должны переопределить журнал pjsip писателя:

#include <android/log.h> 

extern "C" { 
    static void log_writer(int level, const char *data, int len) 
    { 
     __android_log_write(ANDROID_LOG_INFO, "pjsua", data); 
    } 
} 

/** Callback wrapper **/ 
static void on_cli_config(pjsua_app_config *cfg) 
{ 
    pjsua_cb_orig = cfg->cfg.cb; 
    cfg->log_cfg.cb = &log_writer; 

    /* Override pjsua callback, e.g: to install renderer view */ 
    cfg->cfg.cb.on_call_media_state = &on_call_media_state; 
} 

Вы можете нашли этот пример с источниками pjsua: pjsip-apps\src\pjsua\android\jni\pjsua_app_callback.cpp

+0

Колодина - Спасибо! – Nir

Смежные вопросы