Re: [pjsip] pjsua2 crash in endpoint.libCreate Android

DA
Dirar Abu-Saymeh
Fri, May 15, 2020 4:41 AM

After further debugging it seems LibCreate is crashing in the function “attach_jvm”. It seems the variable pj_jni_jvm is not defined.

In googling possible reasons, the only solution that was posted to make sure the config_site.h is properly defined for android which in my case it is:

#define PJ_CONFIG_ANDROID 1
#include <pj/config_site_sample.h>

Does anybody have any suggestions on what could be causing this?

Regards


Message: 1
Date: Tue, 28 Apr 2020 12:56:15 -0400
From: Dirar Abu-Saymeh dirar.abusaymeh@vectrafon.com
To: pjsip@lists.pjsip.org
Subject: [pjsip] pjsua2 crash in endpoint.libCreate Android
Message-ID: C1D8291C-753A-4B88-8471-51CC19B1476A@vectrafon.com
Content-Type: text/plain; charset="utf-8"

Hi,

I have been trying to integrate pjsip into my Xamarin.Forms app. I have successfully gotten the iOS version to work, but have been facing a crash on the Android version and have not found a solution for it. I tried all pjsip versions from 2.6 to 2.10 with the same issue. I also went back to the sample pjsua2xamarin application and I get the same crash.

Crash log:
[Mono] Found as 'CSharp_pjsua2xamarinfpjsua2_Endpoint_libCreate___'.
[libc] Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 30101

What I have done:

  1. Followed instructions in ticket 2086.

  2. Followed pjsip instructions on how to build for Android https://trac.pjsip.org/repos/wiki/Getting-Started/Android https://trac.pjsip.org/repos/wiki/Getting-Started/Android

  3. Added the following android permissions in Manifest just to be comprehensive since ticket 2086 mentions that crash in the initialization phase is most probably related to permissions:
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.USE_SIP" />
    <uses-permission android:name="android.permission.CAMERA" />

  4. I?m trying to run in an emulator and android sdk version 22, so I don?t have to worry about requesting permissions

  5. I have also tried different ndk versions from r13b to r20 and tried targeting various android sdk levels

  6. I used the following configure parameters: APP_PLATFORM=android-18 TARGET_ABI=x86 ./configure-android --use-ndk-cflags --disable-video

I?m not sure what I can do to debug this issue. Has nay body ran into this issues? Any suggestions on what I can do/try next?

Regards
Dirar

After further debugging it seems LibCreate is crashing in the function “attach_jvm”. It seems the variable pj_jni_jvm is not defined. In googling possible reasons, the only solution that was posted to make sure the config_site.h is properly defined for android which in my case it is: #define PJ_CONFIG_ANDROID 1 #include <pj/config_site_sample.h> Does anybody have any suggestions on what could be causing this? Regards > ---------------------------------------------------------------------- > > Message: 1 > Date: Tue, 28 Apr 2020 12:56:15 -0400 > From: Dirar Abu-Saymeh <dirar.abusaymeh@vectrafon.com> > To: pjsip@lists.pjsip.org > Subject: [pjsip] pjsua2 crash in endpoint.libCreate Android > Message-ID: <C1D8291C-753A-4B88-8471-51CC19B1476A@vectrafon.com> > Content-Type: text/plain; charset="utf-8" > > Hi, > > I have been trying to integrate pjsip into my Xamarin.Forms app. I have successfully gotten the iOS version to work, but have been facing a crash on the Android version and have not found a solution for it. I tried all pjsip versions from 2.6 to 2.10 with the same issue. I also went back to the sample pjsua2xamarin application and I get the same crash. > > Crash log: > [Mono] Found as 'CSharp_pjsua2xamarinfpjsua2_Endpoint_libCreate___'. > [libc] Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 30101 > > What I have done: > 1. Followed instructions in ticket 2086. > 2. Followed pjsip instructions on how to build for Android https://trac.pjsip.org/repos/wiki/Getting-Started/Android <https://trac.pjsip.org/repos/wiki/Getting-Started/Android> > 3. Added the following android permissions in Manifest just to be comprehensive since ticket 2086 mentions that crash in the initialization phase is most probably related to permissions: > <uses-permission android:name="android.permission.INTERNET" /> > <uses-permission android:name="android.permission.RECORD_AUDIO" /> > <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> > <uses-permission android:name="android.permission.READ_PHONE_STATE" /> > <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> > <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> > <uses-permission android:name="android.permission.WAKE_LOCK" /> > <uses-permission android:name="android.permission.VIBRATE" /> > <uses-permission android:name="android.permission.USE_SIP" /> > <uses-permission android:name="android.permission.CAMERA" /> > 4. I?m trying to run in an emulator and android sdk version 22, so I don?t have to worry about requesting permissions > > 5. I have also tried different ndk versions from r13b to r20 and tried targeting various android sdk levels > > 6. I used the following configure parameters: APP_PLATFORM=android-18 TARGET_ABI=x86 ./configure-android --use-ndk-cflags --disable-video > > I?m not sure what I can do to debug this issue. Has nay body ran into this issues? Any suggestions on what I can do/try next? > > Regards > Dirar >