r3gis3r / CSipSimple

CSipSimple Mirror (no pull-requests here)
http://www.csipsimple.com
GNU Lesser General Public License v3.0
303 stars 227 forks source link

Has anybody tried CsipSimple on Android 7.0 Nougat? Please share your experiences with the community. #48

Open zipcom opened 8 years ago

mimecine commented 8 years ago

Seems to work fine!

zipcom commented 8 years ago

Thanks for the kind sharing. It is encouraging.

sacp87 commented 8 years ago

I have a problem when i make a call. The app shows a dialog with the following message:

_Detected problems with app native libraries (please consult for detail): libpjsipjni.so: unauthorized access to "libstagefright.so" libpj_videoandroid.so: text relocations

When I click ok the call goes well. Then I want to start video, but app stops and give me this in the logs:

A/art: art/runtime/java_vm_ext.cc:470] JNI DETECTED ERROR IN APPLICATION: input is not valid Modified UTF-8: illegal start byte 0x64
A/art: art/runtime/java_vm_ext.cc:470]     string: ' [CONFIRMED] To: <sip:user@domain>;tag=477811273-1472�ݗ�'
A/art: art/runtime/java_vm_ext.cc:470]     input: '0x20 0x5b 0x43 0x4f 0x4e 0x46 0x49 0x52 0x4d 0x45 0x44 0x5d 0x20 0x54 0x6f 0x3a 0x20 0x3c 0x73 0x69 0x70 0x3a 0x30 0x33 0x39 0x34 0x40 0x61 0x73 0x2e 0x6d 0x63 0x6d 0x2e 0x6e 0x65 0x74 0x2e 0x6d 0x78 0x3e 0x3b 0x74 0x61 0x67 0x3d 0x34 0x37 0x37 0x38 0x31 0x31 0x32 0x37 0x33 0x2d 0x31 0x34 0x37 0x32 0xfc 0xdd 0x97 0xa0 0x02'
A/art: art/runtime/java_vm_ext.cc:470]     in call to NewStringUTF
A/art: art/runtime/java_vm_ext.cc:470]     from java.lang.String org.pjsip.pjsua.pjsuaJNI.pj_str_t_ptr_get(long, org.pjsip.pjsua.pj_str_t)
A/art: art/runtime/java_vm_ext.cc:470] "SipService.Executor" prio=10 tid=13 Runnable
A/art: art/runtime/java_vm_ext.cc:470]   | group="main" sCount=0 dsCount=0 obj=0x32c74a60 self=0x9c9ccf00
A/art: art/runtime/java_vm_ext.cc:470]   | sysTid=23952 nice=0 cgrp=default sched=0/0 handle=0xa097f920
A/art: art/runtime/java_vm_ext.cc:470]   | state=R schedstat=( 716397729 516459512 2919 ) utm=54 stm=17 core=3 HZ=100
A/art: art/runtime/java_vm_ext.cc:470]   | stack=0xa087d000-0xa087f000 stackSize=1038KB
A/art: art/runtime/java_vm_ext.cc:470]   | held mutexes= "mutator lock"(shared held)
A/art: art/runtime/java_vm_ext.cc:470]   native: #00 pc 0034e8dd  /system/lib/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiP12BacktraceMapPKcPNS_9ArtMethodEPv+128)
A/art: art/runtime/java_vm_ext.cc:470]   native: #01 pc 0032f099  /system/lib/libart.so (_ZNK3art6Thread9DumpStackERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEbP12BacktraceMap+304)
A/art: art/runtime/java_vm_ext.cc:470]   native: #02 pc 002381ef  /system/lib/libart.so (_ZN3art9JavaVMExt8JniAbortEPKcS2_+846)
A/art: art/runtime/java_vm_ext.cc:470]   native: #03 pc 00238727  /system/lib/libart.so (_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list+58)
A/art: art/runtime/java_vm_ext.cc:470]   native: #04 pc 000ca6ab  /system/lib/libart.so (_ZN3art11ScopedCheck6AbortFEPKcz+42)
A/art: art/runtime/java_vm_ext.cc:470]   native: #05 pc 000cb02f  /system/lib/libart.so (_ZN3art11ScopedCheck14CheckUtfStringEPKcb+870)
A/art: art/runtime/java_vm_ext.cc:470]   native: #06 pc 000ca621  /system/lib/libart.so (_ZN3art11ScopedCheck17CheckNonHeapValueEcNS_12JniValueTypeE+108)
A/art: art/runtime/java_vm_ext.cc:470]   native: #07 pc 000c9317  /system/lib/libart.so (_ZN3art11ScopedCheck22CheckPossibleHeapValueERNS_18ScopedObjectAccessEcNS_12JniValueTypeE+130)
A/art: art/runtime/java_vm_ext.cc:470]   native: #08 pc 000c8781  /system/lib/libart.so (_ZN3art11ScopedCheck5CheckERNS_18ScopedObjectAccessEbPKcPNS_12JniValueTypeE+800)
A/art: art/runtime/java_vm_ext.cc:470]   native: #09 pc 000c4707  /system/lib/libart.so (_ZN3art8CheckJNI12NewStringUTFEP7_JNIEnvPKc+446)
A/art: art/runtime/java_vm_ext.cc:470]   native: #10 pc 000f00c5  /data/app/com.media5corp.m5f.SymphonyMobile-2/lib/arm/libpjsipjni.so (_ZN7_JNIEnv12NewStringUTFEPKc+8)
A/art: art/runtime/java_vm_ext.cc:470]   native: #11 pc 000f00d3  /data/app/com.media5corp.m5f.SymphonyMobile-2/lib/arm/libpjsipjni.so (Java_org_pjsip_pjsua_pjsuaJNI_pj_1str_1t_1ptr_1get+10)
A/art: art/runtime/java_vm_ext.cc:470]   native: #12 pc 0004d1f1  /data/app/com.media5corp.m5f.SymphonyMobile-2/oat/arm/base.odex (Java_org_pjsip_pjsua_pjsuaJNI_pj_1str_1t_1ptr_1get__JLorg_pjsip_pjsua_pj_1str_1t_2+116)
A/art: art/runtime/java_vm_ext.cc:470]   at org.pjsip.pjsua.pjsuaJNI.pj_str_t_ptr_get(Native method)
A/art: art/runtime/java_vm_ext.cc:470]   at org.pjsip.pjsua.pj_str_t.getPtr(pj_str_t.java:57)
A/art: art/runtime/java_vm_ext.cc:470]   at com.csipsimple.pjsip.PjSipService.pjStrToString(PjSipService.java:2532)
A/art: art/runtime/java_vm_ext.cc:470]   at com.csipsimple.pjsip.PjSipCalls.dumpCallInfo(PjSipCalls.java:254)
A/art: art/runtime/java_vm_ext.cc:470]   at com.csipsimple.service.SipService$1$27.runWithReturn(SipService.java:869)
A/art: art/runtime/java_vm_ext.cc:470]   at com.csipsimple.service.SipService$ReturnRunnable.doRun(SipService.java:2337)
A/art: art/runtime/java_vm_ext.cc:470]   at com.csipsimple.service.SipService$SipRunnable.run(SipService.java:2308)
A/art: art/runtime/java_vm_ext.cc:470]   at com.csipsimple.service.SipService$SipServiceExecutor.executeInternal(SipService.java:2188)
A/art: art/runtime/java_vm_ext.cc:470]   at com.csipsimple.service.SipService$SipServiceExecutor.handleMessage(SipService.java:2180)
A/art: art/runtime/java_vm_ext.cc:470]   at android.os.Handler.dispatchMessage(Handler.java:102)
A/art: art/runtime/java_vm_ext.cc:470]   at android.os.Looper.loop(Looper.java:154)
A/art: art/runtime/java_vm_ext.cc:470]   at android.os.HandlerThread.run(HandlerThread.java:61)

This is random issue , and it happens several times when I try the above scenario. It works sometimes though. Please help me with a solution to fix this issue.

knoy commented 7 years ago

Anyone found a solution to the above problem? I am getting similar errors randomly on calls. This appears to happen more frequently the first time a call is made and doesn't seem to affect the actual functionality of the application in any way

CodingFanatic-zz commented 7 years ago

I am using CSIPSimple for Android Studio and I am experiencing the same problem. I am curious if there is a solution as well. It doesn't seem to effect the overall functionality but I only use it for making/receiving calls and not video, etc.

To eliminate the error, I recompiled the code with Android SDK 24 which I managed to do with minor code changes. But now I'm experiencing a problem where the app does not re-register when going from WiFi to mobile and sometimes vice versa. Something that previously worked. Instead, the account goes into an "inactive" state and doesn't even try to register when clicking the account button.

CodingFanatic-zz commented 7 years ago

As mentioned in my previous post, I figured out how to get rid of the dialog by compiling the code with Android SDK 24 or greater but then that created the problem where the connection dies when going from WiFi to mobile and vice versa.

I believe I found a fix to the connectivity issue which is to ensure the "info" variable, passed as a parameter to the "onConnectivityChanged()" function in DynamicReceiver4.java, is not null. Personally, I put the null check in the function itself but obviously you could check before calling the function. This at least works when compiling with SDK 25 which I'm pretty sure will work with SDK 24.

bhavikmandalia commented 7 years ago

@CodingFanatic thanks for sharing the info.i tried the solution as you suggested(compile my project with SDK 25).but still facing same issue.

so m curious to know what other changes do i need to make to get rid of the dialog ?

I am still getting the same warning.

_Detected problems with app native libraries (please consult for detail): libpj_video_android.so: text relocations libpj_vpx.so: text relocations libpjsipjni.so: unauthorized access to "libstagefright.so" libpj_silkcodec.so: text relocations

@r3gis3r any clue for this ???

CodingFanatic-zz commented 7 years ago

@bhavikmandalia No problem I guess it looks like I didn't help that much after all. LOL

Not sure this makes a difference but I'm running CSIPSimple on a Nexus 5x with Android 7.1.1. I also ran it with 7.1.2 with no issues.

It's odd that you were able to get it to build but the error still popped up. Attached is what my build.gradle looks like. I did have to go through the code to make it SDK 25 compliant but the popup definitely disappeared after doing so. I literally just went through the whole process with the original source moments ago to verify.

build_gradle.txt

I hope this helps and good luck!

bhavikmandalia commented 7 years ago

@CodingFanatic many thanks for sharing build.gradle info.

By setting the info as per your build.gradle,i get rid of that annoying popup dialog but now faced the new message everytime when i run the code

Can't load native library.CPU architecture invalid for this _build_

FYI,i am using Huawei nexus 6p(Android 7.1.1).

Just curious to about your pjsip library version.

CodingFanatic-zz commented 7 years ago

@bhavikmandalia Unfortunately, I can't help you with your new message as I didn't encounter that issue. I'm a little surprised that you didn't run into this issue before.

With that said, it sounds like you may need to recompile the pjsip library for your specific architecture? Again that is a little surprising since it sounds like it worked before.

As for the version of pjsip library I'm using, I'm using whatever came with the CSIPSimple download. Not sure how to get what version it is on a Windows box. If you tell me how, I can find out for you.

Sorry I couldn't be of more help!

Good luck!

Edit: Just to clarify, the version of CSIPSImple I'm using is linked below (for Android Studio) and comes with the appropriate pjsip library. Maybe you can grab that library and see if it works in your project.

https://github.com/tqcenglish/CSipSimple

ChrisBeeler commented 7 years ago

Thank you for this thread. I used CSipSimple on a Verizon Samsung Note 4 running Android 6.0.1 without issue. I upgraded to Pixel XL running 7.1.1 and my SIP account will register over LTE but the SIP account will not register when connected to Wifi. Is there anyone else that has experienced this issue?

CodingFanatic-zz commented 7 years ago

@ChrisBeeler I know someone who has run the changes I mentioned here on a regular and xl pixel with no issues over wifi. They were either running on 7.1.1 or 7.1.2.

vadherjitu commented 7 years ago

@CodingFanatic can u please share .so file for different architecture please your help will save mine time ...do needful

CodingFanatic-zz commented 7 years ago

@vadherjitu I used what was included in the link below:

https://github.com/tqcenglish/CSipSimple

I didn't need to generate any new .so files for other architectures.

vadherjitu commented 7 years ago

anyone have idea of how to generate .so from cssimple project in windows or linux

anmol1991 commented 7 years ago

Any body has any idea why AMR codecs are not shown in codec list on Nougat devices.

anmol1991 commented 7 years ago

Is there any plan to update csipsimple wrt AMR ?

On Fri, 19 May 2017 03:53:17 -0700, Lily Wilson wrote

the filenames for the AMR libraries changed. AMR won't work unless csipsimple is updated to use the new libraries. — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

Thanks & Regards,

ANMOL PRAKASH RESEARCH ENGINEER C-DOT, BANGALORE

अनमोल प्रकाश रिसर्च इंजीनियर सी-डॉट,बंगलोर

Ph : 07829022853

EVaime commented 6 years ago

Hi @anmol1991, are you still interested in the integration of the AMR codec ? If you want, I may help you to complete the task. Please contact me by email to evaime73 on gmail domain.