PDA

View Full Version : SKMaps SIGSEGV - Android 4.0.3



fgo6400
12.02.2016, 10:06
Hi,

we want to build a navigation and mapping app for a vehicle mounted computer which is running Android 4.0.3 (API 15). Therefore I'm evaluating mapping and navigation SDKs for Android. I started yesterday with the SKMaps SDK. Tried to add a map to our demo app and I also tried the SKMap Demo which is included in the SDK. Both are running without any problems on my Nexus 5 (Android 6.0.1) but both crash on the target device (Android 4.0.3) and also in the Emulator (also Android 4.0.3).
The logcat output from the Emulator (http://pastebin.com/KWQuWngk) gives a hint that there is a problem with OpenGL. On the vehicle computer the logcat output gives no hint that the problem has something to do with OpenGL. You can find the output here: http://pastebin.com/2Qb9JWy5
The message and the result is the same: Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1)

On vehicle computer and Emulator the app starts, the map control is initialized, but no streets are rendered in the map fragment (it's just gray) and after a few seconds the app crashes and I can see the home screen again. I have tried that also with a new app. Just a main activity and a fragment which contains the map (I can send you that projects if that would help).

Are there any known problems with older Android versions? Should the app run in the Emulator at all? Can I get further information why the app crashes?
I have also tried to install and use the Scout Navi app (https://play.google.com/store/apps/details?id=com.skobbler.forevermapng&hl=de). This app works on the vehicle computer. Is this app also based on the SKMaps SDK?


BTW: There is also allways a exception regarding the getLatitude and getLongitude methods: java.lang.NoSuchMethodError: no method with name='getLongitude' signature='()D' in class Lcom/skobbler/ngx/positioner/SKPosition;

Thanks!
Best Regards,
Florian

Adela_Silvia
15.02.2016, 18:54
Which SDK version are you using (the latest one is 2.5.1)?
Since 2.5 we no longer have the getLongitude API on SKPosition (it's replaced by getCoordinate): http://developer.skobbler.com/docs/android/com/skobbler/ngx/positioner/SKPosition.html (http://developer.skobbler.com/docs/android/com/skobbler/ngx/positioner/SKPosition.html)

If you're using an older version please use the latest one. Let us know if the issue is still present

fgo6400
16.02.2016, 09:37
Good Morning,

I have checked the version of the SDK which I'm using.
I have downloaded the SDK and the demo app from there: http://developer.skobbler.de/download/SKMaps_Android_2.5.1_withDemoAndroidStudio.zip
There is no real version info but according to the version number in the filename it is version 2.5.1.
I have copied the native libraries from SKMaps_Android_2.5.1_withDemoAndroidStudio\Android OpenSourceDemoGradle\app\src\main\jniLibs\ and the SKMaps.jar from SKMaps_Android_2.5.1_withDemoAndroidStudio\Android OpenSourceDemoGradle\sdktools\libs\SKMaps.jar.
Are that the correct files (the structure of the SDK zip file is a little bit confusing :confused:)? The files have changed on the 29.09.2015. Was that the last release of the SDK?

After building and deploying the demo app I still get the following output in the logcat and the app crashes after a few seconds:

02-16 08:22:22.426 2119-2119/com.company.android.mapsdktest W/System.err: java.lang.NoSuchMethodError: no method with name='getLatitude' signature='()D' in class Lcom/skobbler/ngx/positioner/SKPosition;
02-16 08:22:22.426 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.Runtime.nativeLoad(Native Method)
02-16 08:22:22.426 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.Runtime.loadLibrary(Runtime.java:368)
02-16 08:22:22.426 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.System.loadLibrary(System.java:535)
02-16 08:22:22.426 2119-2119/com.company.android.mapsdktest W/System.err: at com.skobbler.ngx.SKMaps.<clinit>(SourceFile:59)
02-16 08:22:22.426 2119-2119/com.company.android.mapsdktest W/System.err: at com.company.android.mapsdktest.MainActivity.Initia lizeSkobblerLibrary(MainActivity.java:86)
02-16 08:22:22.434 2119-2119/com.company.android.mapsdktest W/System.err: at com.company.android.mapsdktest.MainActivity.onCrea te(MainActivity.java:48)
02-16 08:22:22.434 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.Activity.performCreate(Activity.java:4 465)
02-16 08:22:22.434 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1049)
02-16 08:22:22.434 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:1920)
02-16 08:22:22.434 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:1981)
02-16 08:22:22.434 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread.access$600(ActivityThre ad.java:123)
02-16 08:22:22.434 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1147)
02-16 08:22:22.434 2119-2119/com.company.android.mapsdktest W/System.err: at android.os.Handler.dispatchMessage(Handler.java:99 )
02-16 08:22:22.442 2119-2119/com.company.android.mapsdktest W/System.err: at android.os.Looper.loop(Looper.java:137)
02-16 08:22:22.442 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread.main(ActivityThread.jav a:4424)
02-16 08:22:22.442 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.reflect.Method.invokeNative(Native Method)
02-16 08:22:22.442 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.reflect.Method.invoke(Method.java:511)
02-16 08:22:22.442 2119-2119/com.company.android.mapsdktest W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:784)
02-16 08:22:22.442 2119-2119/com.company.android.mapsdktest W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:551)
02-16 08:22:22.442 2119-2119/com.company.android.mapsdktest W/System.err: at dalvik.system.NativeStart.main(Native Method)
02-16 08:22:22.442 2119-2119/com.company.android.mapsdktest W/System.err: java.lang.NoSuchMethodError: no method with name='getLongitude' signature='()D' in class Lcom/skobbler/ngx/positioner/SKPosition;
02-16 08:22:22.442 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.Runtime.nativeLoad(Native Method)
02-16 08:22:22.450 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.Runtime.loadLibrary(Runtime.java:368)
02-16 08:22:22.450 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.System.loadLibrary(System.java:535)
02-16 08:22:22.450 2119-2119/com.company.android.mapsdktest W/System.err: at com.skobbler.ngx.SKMaps.<clinit>(SourceFile:59)
02-16 08:22:22.450 2119-2119/com.company.android.mapsdktest W/System.err: at com.company.android.mapsdktest.MainActivity.Initia lizeSkobblerLibrary(MainActivity.java:86)
02-16 08:22:22.450 2119-2119/com.company.android.mapsdktest W/System.err: at com.company.android.mapsdktest.MainActivity.onCrea te(MainActivity.java:48)
02-16 08:22:22.450 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.Activity.performCreate(Activity.java:4 465)
02-16 08:22:22.450 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1049)
02-16 08:22:22.450 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:1920)
02-16 08:22:22.450 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:1981)
02-16 08:22:22.458 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread.access$600(ActivityThre ad.java:123)
02-16 08:22:22.458 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1147)
02-16 08:22:22.458 2119-2119/com.company.android.mapsdktest W/System.err: at android.os.Handler.dispatchMessage(Handler.java:99 )
02-16 08:22:22.458 2119-2119/com.company.android.mapsdktest W/System.err: at android.os.Looper.loop(Looper.java:137)
02-16 08:22:22.458 2119-2119/com.company.android.mapsdktest W/System.err: at android.app.ActivityThread.main(ActivityThread.jav a:4424)
02-16 08:22:22.458 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.reflect.Method.invokeNative(Native Method)
02-16 08:22:22.458 2119-2119/com.company.android.mapsdktest W/System.err: at java.lang.reflect.Method.invoke(Method.java:511)
02-16 08:22:22.458 2119-2119/com.company.android.mapsdktest W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:784)
02-16 08:22:22.458 2119-2119/com.company.android.mapsdktest W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:551)
02-16 08:22:22.465 2119-2119/com.company.android.mapsdktest W/System.err: at dalvik.system.NativeStart.main(Native Method)
02-16 08:22:34.786 2119-2150/com.company.android.mapsdktest A/libc: Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1)

Seems like the versions of the native libs and the jar-libs are not compatible!?
If you want I can send you the demo project.
Thanks!

pchad
18.02.2016, 18:47
Hi, has this been fixed? This is the error that I am getting. Is there a fix for it?

02-19 00:21:59.395 10314-10334/? W/System.err: java.lang.NoSuchMethodError: no method with name='getLatitude' signature='()D' in class Lcom/skobbler/ngx/positioner/SKPosition;
02-19 00:21:59.395 10314-10334/? W/System.err: at java.lang.Runtime.nativeLoad(Native Method)
02-19 00:21:59.395 10314-10334/? W/System.err: at java.lang.Runtime.doLoad(Runtime.java:421)
02-19 00:21:59.395 10314-10334/? W/System.err: at java.lang.Runtime.loadLibrary(Runtime.java:362)
02-19 00:21:59.395 10314-10334/? W/System.err: at java.lang.System.loadLibrary(System.java:533)
02-19 00:21:59.395 10314-10334/? W/System.err: at com.skobbler.ngx.SKMaps.<clinit>(SourceFile:59)
02-19 00:21:59.395 10314-10334/? W/System.err: at com.skobbler.ngx.SKPrepareMapTextureThread.a(Sourc eFile:129)
02-19 00:21:59.395 10314-10334/? W/System.err: at com.skobbler.ngx.SKPrepareMapTextureThread.run(Sou rceFile:85)
02-19 00:21:59.395 10314-10334/? W/System.err: java.lang.NoSuchMethodError: no method with name='getLongitude' signature='()D' in class Lcom/skobbler/ngx/positioner/SKPosition;
02-19 00:21:59.395 10314-10334/? W/System.err: at java.lang.Runtime.nativeLoad(Native Method)
02-19 00:21:59.395 10314-10334/? W/System.err: at java.lang.Runtime.doLoad(Runtime.java:421)
02-19 00:21:59.395 10314-10334/? W/System.err: at java.lang.Runtime.loadLibrary(Runtime.java:362)
02-19 00:21:59.395 10314-10334/? W/System.err: at java.lang.System.loadLibrary(System.java:533)
02-19 00:21:59.395 10314-10334/? W/System.err: at com.skobbler.ngx.SKMaps.<clinit>(SourceFile:59)
02-19 00:21:59.395 10314-10334/? W/System.err: at com.skobbler.ngx.SKPrepareMapTextureThread.a(Sourc eFile:129)
02-19 00:21:59.395 10314-10334/? W/System.err: at com.skobbler.ngx.SKPrepareMapTextureThread.run(Sou rceFile:85)

fgo6400
19.02.2016, 09:19
Good to see that I'm not the only one getting this error! :cool:
@Skobbler Team: please check if the .jar and .so files in the SDK zip file which is currently available for download (with Android Studio demo project) are the newest version!

Thanks!

Adela_Silvia
19.02.2016, 11:19
Here's a quick fix for this error: http://forum.skobbler.com/showthread.php/7446-Fixing-quot-No-such-method-getlatitude-quot

Let us know if you encounter any other issues.

fgo6400
19.02.2016, 11:49
Thanks for the quick fix. No more "NoSuchMethodError" exceptions. But I still get the SIGSEGV error and the app crashes:
02-19 10:39:25.567 10366-10493/com.company.android.mapsdktest A/libc: Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1)

Any idea on that? Could it be a OpenGL problem?

Adela_Silvia
22.02.2016, 11:44
Unfortunately the Android emulators are not very reliable when it comes to OpenGL issues, so we highly recommend testing directly on a real device. Please test on a real device and let us know if the issue is still present as we can't solve emulator issues

fgo6400
22.02.2016, 11:48
I'm testing already on a real device!

Adela_Silvia
18.04.2016, 14:03
Quickfix for the error mentioned below: http://forum.skobbler.com/showthread.php/7446-Android-Fixing-quot-No-such-method-getlatitude-quot

fgo6400
18.04.2016, 15:52
The quickfix you posted is the same file/link you posted already on 19th of Frebruar. So I don't think that will fix the SIGSEGV error... :rolleyes:

Adela_Silvia
19.04.2016, 15:35
This is a newer build for that hotfix - please check if the issue is still valid: https://www.dropbox.com/sh/2iomgc5evegi9hk/AACIjWcmH7l2EshDpeRqWILda?dl=0