3

I have a problem due to updating SKMaps from version 2.5.0 to version 2.5.1. Something doesn’t seem to be right with the native .so library. I always have this error:

11-24 10:34:04.922 7463-7884/de.mypackage A/libc: Fatal signal 7 (SIGBUS) at 0x00000017 (code=1), thread 7884 (e.mypackage) 

And after that I get this warning (But this is also displayed in log on app start!!!):

11-24 10:34:05.989 8531-8531/de.mypackage W/System.err: 
java.lang.NoSuchMethodError: no method with name='getLatitude' 
signature='()D' in class Lcom/skobbler/ngx/positioner/SKPosition;
11-24 10:34:05.992 8531-8531/de.mypackage W/System.err:     at 
java.lang.Runtime.nativeLoad(Native Method)
11-24 10:34:05.992 8531-8531/de.mypackage W/System.err:     at 
java.lang.Runtime.doLoad(Runtime.java:421)

11-24 10:34:05.992 8531-8531/de.mypackage W/System.err:     at 
java.lang.Runtime.loadLibrary(Runtime.java:362)
11-24 10:34:05.992 8531-8531/de.mypackage W/System.err:     at 
java.lang.System.loadLibrary(System.java:526)
11-24 10:34:05.992 8531-8531/de.mypackage W/System.err:     at     
com.skobbler.ngx.SKMaps.<clinit>(SourceFile:59)
11-24 10:34:05.992 8531-8531/de.mypackage W/System.err:     at 
de.mypackage.global.activities.MyActivity.onCreate(MyActivity.java:32)
11-24 10:34:05.992 8531-8531/de.mypackage W/System.err:     at 
de.mypackage.controller.xxx.activities.MyActivity.onCreate(MyActivity.java:103)

I am testing the app on armv7 platform. I pulled a new .so file by pulling a new SKMaps.zip with gradle task installSKMaps.

My build.gradle is configured as it is shown here:

Adding the SDK to the project using Gradle

But the update process is described in a more detailed way over here:

SDK Update Procedure (2.X to 2.Y)

Do I need to walk through all the steps in this description? So do I need the last step called There are 2 possibilities to perform an update by overwriting(1) or replacing(2)

Do I need to add this checkForUpdate() method into the source code as described in

2) Delete 2.X resources and keep only the 2.Y resources ?

At first I don't need any automation of the update process within the app. I first just want to update SKMaps in my app manually.

unlimited101
  • 3,653
  • 4
  • 22
  • 41
  • I also faced the same warning message `java.lang.NoSuchMethodError: no non-static method "Lcom/skobbler/ngx/positioner/SKPosition;.getLatitude()D"` It was at SKMaps.getInstance().initializeSKMaps. The map are still able to load. I even tried to do a clean installation. The same warning message appear again. The sample app from skobbler seem to have the same problem `com.skobbler.sdkdemo W/System.err: java.lang.NoSuchMethodError: no non-static method "Lcom/skobbler/ngx/positioner/SKPosition;.getLatitude()D"` – Lee Yi Hong Mar 18 '16 at 10:28

1 Answers1

1

The 11-24 10:34:04.922 7463-7884/de.mypackage A/libc: Fatal signal 7 (SIGBUS) at 0x00000017 (code=1), thread 7884 (e.mypackage) can have multiple sources and has be investigated in a larger context (Android version, hardware config, OpenGL version, code flow, etc.)

As for the SDK update procedure:

  • in the project: you need to update all the SKMaps specific resources (.so files, .jar, the SKMaps.zip)
  • if you modified the content of the SKMap.zip then you need to make sure that your new SKMaps.zip combines your changes with the ones made by the new version
  • at runtime, if you need to make sure that the new zip is properly unpacked and old resources replaced (if updating an already existing app) - that the purpose of the runtime procedure described at http://developer.skobbler.de/getting-started/android#sec028)
Ando
  • 11,199
  • 2
  • 30
  • 46