PJSip en android
Estoy tratando de construir un Sip client
pjsip
para Android con pjsip
como CSipSimple
proyecto. Sin embargo, en realidad no sé mucho acerca de pjsip
. ¿Alguien tiene un tutorial sobre pjsip o algo así para construir un Sip softphone
SIP en Android con PJsip lib? ¡Cualquier sugerencia es bienvenida!
- Error en la configuración de pjsip para android
- (180 ringning) No tono de llamada al conectar la llamada androide pjsip (pjsua2)
- Construir PJSIP para Android en Windows?
- Error de compilación de pjsip 2.5.5
- Implementación de App-to-App llamando a Android
- Problema de calidad de voz en Android VoIP app con PJSIP
- Pjsua aplicación hecha por pjsip error de registro de mensajes?
- ¿Cuál es la mejor manera de acercarse? Utilizar PJSIP o SIP Android API para crear una aplicación de llamada basada en SIP
- No se puede cargar la biblioteca: reloc_library : no se puede localizar 'rand'
- Cámara de conmutación de adelante hacia atrás en pjsip android
- No se puede abrir el dispositivo de sonido: funcionamiento del dispositivo de audio no válido o no admitido
- Llamar a pjlib desde un subproceso desconocido / externo. Debe "" registrar threads externos con pj_thread_register ()
- PJSUA2 sip aplicación android nativa
No es necesario utilizar bibliotecas de terceros para crear la funcionalidad de cliente SIP en Android. Android incluye una completa SIP API . Usted puede echar un vistazo a la demostración SIP para entender cómo utilizar SIP APIs para un walkie-talkie tipo de implementación.
Puede obtener ayuda de este sitio
La respuesta aceptada no es del todo exacta. Hay muchas características deseables que faltan en la API SIP de Android que quizás desee obtener a través de una biblioteca de terceros.
Con respecto al pjsip mencionado, he pasado mucho tiempo experimentando con la compilación de pjsip de Android, y sinceramente la única manera de obtener un registro instantáneo confiable para trabajar como documentado es construir la librería OpenSSL 1.0.2a y pasarla En el momento de la configuración. Entonces en Java usted necesita intentar (y fallar) para permitir la comunicación de TLS, apenas como usted los ve hacer para UDP y TCP. Esto es lo que quiero decir:
/* Create transports. */ try { transports.add( ep.transportCreate(pjsip_transport_type_e.PJSIP_TRANSPORT_TLS, transportConfig) ); } catch (Throwable t2) { SipManager.log().e(t2); } try { transports.add( ep.transportCreate(pjsip_transport_type_e.PJSIP_TRANSPORT_UDP, transportConfig) ); } catch (Throwable t) { SipManager.log().e(t); } try { transports.add( ep.transportCreate(pjsip_transport_type_e.PJSIP_TRANSPORT_TCP, transportConfig) ); } catch (Throwable t) { SipManager.log().e(t); }
Reemplace las llamadas de SipManager.log()
para su propia aplicación.
No estoy completamente seguro de por qué, pero esto es necesario para mí. De lo contrario, el proceso de registro es semi-no determinista, en el sentido de que funcionará después de fracasar unas cuantas veces, o fallar durante 5 minutos, de repente éxito, etc Parece que se confunden después de la primera inscripción.
Aquí es cómo configuré:
TARGET_ABI=arm64-v8a ./configure-android --use-ndk-cflags --with-ssl=`pwd`/../3rd-party/openssl-1.0.2a
Y eso fue después de seguir las instrucciones de Android adecuadas , exrtacting el tarball de OpenSSL en una carpeta por encima de pjsip ../3rd-party/
y el primer edificio allí. Describí ese proceso con algún detalle en un post anterior .
Si desea desarrollar sólo sip cliente, entonces puede utilizar sip API de Android, pero como se menciona en las respuestas anteriores limitará las características de sus aplicaciones. Pero si desea desarrollar instalaciones de chat o de llamada en su aplicación, entonces puede utilizar pjsip que proporciona muchas características enriquecidas. En cuanto a la construcción de pjsip para Android, puede aprender de aquí (android) y para ios, aprender de aquí (ios) . Básicamente, pjsip le da muchas API con características ricas que puede utilizar según sus necesidades como pjlib, pjsip, medios de comunicación PJ, pjsua etc pjsua (o pjsua2 para android) son de nivel superior API que le ayuda a extraer el máximo rendimiento con complejidades mínimas Puedes ver directamente aquí. Usted puede aprender sobre pjsua de aquí . También han proporcionado una aplicación de demostración (pjsua CLI) , Pjsua CLI y su fuente que le ayudará a entender la estructura básica de una aplicación para construir con pjsip tener chat y funciones de llamada.
Para Android, puedes ver una aplicación de demostración en github .
- ¿Cómo compartir el enlace a través de twitter en android?
- API de búsqueda de Google para sistemas Android