Coder Social home page Coder Social logo

sevar83 / android-spatialite Goto Github PK

View Code? Open in Web Editor NEW
96.0 14.0 45.0 60.74 MB

Spatialite database JNI wrapper for Android

Java 0.87% Shell 7.38% HTML 11.99% Makefile 11.40% C++ 6.86% C 57.90% Objective-C 0.34% M4 0.75% CMake 0.07% Batchfile 0.05% PHP 0.14% Python 1.61% Ruby 0.17% CSS 0.01% Assembly 0.02% Perl 0.01% XSLT 0.22% Lex 0.03% Yacc 0.18% DIGITAL Command Language 0.01%
android spatialite android-spatialite geospatial-data geometry-data database

android-spatialite's People

Contributors

sevar83 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

android-spatialite's Issues

dlopen failed: library "libandroid_runtime.so" not found in Android 7

I am getting this runtime error only on Android Nougat 7.0. Is this a known issue?

Fatal Exception: java.lang.UnsatisfiedLinkError: dlopen failed: library "libandroid_runtime.so" not found
       at java.lang.Runtime.loadLibrary0(Runtime.java:977)
       at java.lang.System.loadLibrary(System.java:1567)
       at org.spatialite.database.SQLiteDatabase.loadLibs(SQLiteDatabase.java:151)
       at org.spatialite.database.SQLiteDatabase.loadLibs(SQLiteDatabase.java:138)
       at com.foo.bar.db.SpatialiteDao.<init>(SpatialiteDao.java:117)
       at com.foo.bar.db.SpatialiteDao.getInstance(SpatialiteDao.java:327)
       at com.foo.bar.fragments.s0.FragmentMC2.onCreateView(FragmentMC2.java:91)
       at android.support.v4.app.Fragment.performCreateView(Fragment.java:2192)
       at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1299)
       at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1528)
       at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1595)
       at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:758)
       at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2363)
       at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2149)
       at android.support.v4.app.FragmentManagerImpl.optimizeAndExecuteOps(FragmentManager.java:2103)
       at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2013)
       at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:710)
       at android.os.Handler.handleCallback(Handler.java:751)
       at android.os.Handler.dispatchMessage(Handler.java:95)
       at android.os.Looper.loop(Looper.java:154)
       at android.app.ActivityThread.main(ActivityThread.java:6780)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1496)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1386)

Constraint fails when trying to INSERT

Hi,

i've initialized database with:

@Override
public void onCreate(SQLiteDatabase db) {
String createSql = "CREATE TABLE t_geom  id INTEGER NOT NULL " +
                                "PRIMARY KEY AUTOINCREMENT " +
                                "name TEXT NOT NULL " +
                                "measured_value DOUBLE NOT NULL);";
    db.execSQL(createSql);

    db.rawQuery("SELECT InitSpatialMetaData();");

    db.rawQuery("SELECT AddGeometryColumn('t_geom', 'the_geom', 4326, 'POINT', 'XY', 1);"");

     ...

 }

I'm getting everything instantiated:
image

But when I'm trying to INSERT value in that field
INSERT INTO t_geom(name, measured_value, the_geom) VALUES ('testtttt', 22.3, PointFromText('POINT(101.23 171.82)'));

I'm getting:
android.database.sqlite.SQLiteConstraintException: t_geom.the_geom violates Geometry constraint [geom-type or SRID not allowed] (code 1811) at org.spatialite.database.SQLiteConnection.nativeExecuteForChangedRowCount(Native Method) at org.spatialite.database.SQLiteConnection.executeForChangedRowCount(SQLiteConnection.java:764) at org.spatialite.database.SQLiteSession.executeForChangedRowCount(SQLiteSession.java:766) at org.spatialite.database.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:68) at org.spatialite.database.SQLiteDatabase.executeSql(SQLiteDatabase.java:1677) at org.spatialite.database.SQLiteDatabase.execSQL(SQLiteDatabase.java:1669)

Spatial-gui also displays error message:
image

Any idea?

Thanks.

Native Crash on arm64-v8a Android 7.0

I am getting SIGSEGV on Asus Zenpad Z8s. Its a ARM arm64-v8a architecture tablets running Android 7.0 My ABI splits as follows:

splits {
abi {
enable true
reset()
include 'x86', 'armeabi-v7a', 'x86_64', "arm64-v8a"
universalApk false
}
}

Its failing in:

android::utf8ToJavaCharArray(char const*, unsigned short*, int) 0x0000007f9181e930

being called from CursorWIndow.java.

My imports are:

import android.database.Cursor;
import org.spatialite.CursorWindow;

I cant tell if its loading a wrong library or what. Any clues ?

``05-19 11:19:14.658 ? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
05-19 11:19:14.658 ? A/DEBUG: Build fingerprint: 'asus/VZW_ASUS_P00J/ASUS_P00J:7.0/NRD90M/VZW_ASUS_P00J-V3.7.4-20180112:user/release-keys'
05-19 11:19:14.658 ? A/DEBUG: Revision: '0'
05-19 11:19:14.658 ? A/DEBUG: ABI: 'arm64'
05-19 11:19:14.658 ? A/DEBUG: pid: 28733, tid: 28798, name: AsyncTask #3 >>> us.avnav.efb <<<
05-19 11:19:14.658 ? A/DEBUG: signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0x7f90f80000
05-19 11:19:14.658 ? A/DEBUG: x0 0000007f8e6644c0 x1 0000007f90e92060 x2 0000000000115fee x3 0000000000076fd1
05-19 11:19:14.659 ? A/DEBUG: x4 0000000000000038 x5 0000000000000014 x6 0000000000000001 x7 0000000000000000
05-19 11:19:14.659 ? A/DEBUG: x8 0000000000076fd1 x9 0000000000000002 x10 0000000000000005 x11 0000000000000004
05-19 11:19:14.659 ? A/DEBUG: x12 00000000000000e0 x13 0000000000076fd0 x14 000000000000001f x15 0000000000003fc0
05-19 11:19:14.659 ? A/DEBUG: x16 000000000000d800 x17 000000000000fffd x18 0000000000076fd1 x19 0000007f93e94e00
05-19 11:19:14.659 ? A/DEBUG: x20 0000007f90e92060 x21 0000007f910bf4e8 x22 0000007f910be040 x23 0000000012f03300
05-19 11:19:14.659 ? A/DEBUG: x24 0000000000000001 x25 8b7530acb7d29e4f x26 0000007f93fb0898 x27 8b7530acb7d29e4f
05-19 11:19:14.659 ? A/DEBUG: x28 0000000000000002 x29 0000007f910be090 x30 0000007f91e0d714
05-19 11:19:14.659 ? A/DEBUG: sp 0000007f90e92050 pc 0000007f91e0f930 pstate 0000000080000000
05-19 11:19:14.660 ? A/DEBUG: backtrace:
05-19 11:19:14.660 ? A/DEBUG: #00 pc 000000000007c930 /data/app/us.avnav.efb-2/lib/arm64/libandroid_spatialite.so (_ZN7android19utf8ToJavaCharArrayEPKcPti+216)
05-19 11:19:14.660 ? A/DEBUG: #1 pc 000000000007a710 /data/app/us.avnav.efb-2/lib/arm64/libandroid_spatialite.so
05-19 11:19:14.660 ? A/DEBUG: #2 pc 000000000154bb44 /data/app/us.avnav.efb-2/oat/arm64/base.odex (offset 0x13f7000)

SQLiteCipher - SpatiaLite question

Hi,
I use the SQLiteCipher (Zetetic) android library to manage the SQlite databases and now I 'm trying to integrate the spatialite part. Why do you deprecate the SQLiteCipher in your new release?

Thank you in advance

table tablename has no column named colname (code 1)

I have installed this lib, and it is sort of working, but the spatialite stuff isn't working properly.

E.g. I have this:

            String sql = "CREATE TABLE test_pt (";
            sql += "id INTEGER NOT NULL PRIMARY KEY,";
            sql += "name TEXT NOT NULL)";
            db.execSQL(sql);
            // creating a POINT Geometry column
            sql = "SELECT AddGeometryColumn('test_pt', ";
            sql += "'geom', 4326, 'POINT', 'XY')";
            db.execSQL(sql);

That works fine.

But then when I try to insert into this table with

            int i;
            for (i = 0; i < 100; i++)
            {
                Log.p("Inserting point "+i);
              // for POINTs we'll use full text sql statements
              sql = "INSERT INTO test_pt (id, name, geom) VALUES (";
              sql += i + 1;
              sql += ", 'test POINT #";
              sql += i + 1;
              sql += "', GeomFromText('POINT(";
              sql += i / 1000.0;
              sql += " ";
              sql += i / 1000.0;
              sql += ")', 4326))";
              db.execSQL(sql);
            }

I get

android.database.sqlite.SQLiteException: table test_pt has no column named geom (code 1): , while compiling: INSERT INTO test_pt (id, name, geom) VALUES (1, 'test POINT #1', GeomFromText('POINT(0.0 0.0)', 4326))
04-30 14:14:38.851  3137  3183 W System.err: 	at org.spatialite.database.SQLiteConnection.nativePrepareStatement(Native Method)
04-30 14:14:38.851  3137  3183 W System.err: 	at org.spatialite.database.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:922)
04-30 14:14:38.851  3137  3183 W System.err: 	at org.spatialite.database.SQLiteConnection.prepare(SQLiteConnection.java:525)
04-30 14:14:38.851  3137  3183 W System.err: 	at org.spatialite.database.SQLiteSession.prepare(SQLiteSession.java:599)
04-30 14:14:38.851  3137  3183 W System.err: 	at org.spatialite.database.SQLiteProgram.<init>(SQLiteProgram.java:59)
04-30 14:14:38.852  3137  3183 W System.err: 	at org.spatialite.database.SQLiteStatement.<init>(SQLiteStatement.java:37)
04-30 14:14:38.852  3137  3183 W System.err: 	at org.spatialite.database.SQLiteDatabase.executeSql(SQLiteDatabase.java:1675)
04-30 14:14:38.852  3137  3183 W System.err: 	at org.spatialite.database.SQLiteDatabase.execSQL(SQLiteDatabase.java:1619)
04-30 14:14:38.852  3137  3183 W System.err: 	at com.codename1.spatialite.AndroidSpatialiteDB.execute(AndroidSpatialiteDB.java:67)
04-30 14:14:38.852  3137  3183 W System.err: 	at com.codename1.spatialite.demo.SpatialiteDemo.start(SpatialiteDemo.java:106)
04-30 14:14:38.852  3137  3183 W System.err: 	at com.codename1.spatialite.demo.SpatialiteDemoStub.run(SpatialiteDemoStub.java:141)
04-30 14:14:38.852  3137  3183 W System.err: 	at com.codename1.ui.Display.processSerialCalls(Display.java:1129)
04-30 14:14:38.852  3137  3183 W System.err: 	at com.codename1.ui.Display.mainEDTLoop(Display.java:924)
04-30 14:14:38.852  3137  3183 W System.err: 	at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120)
04-30 14:14:38.852  3137  3183 W System.err: 	at com.codename1.impl.CodenameOneThread$1.run(CodenameOneThread.java:60)
04-30 14:14:38.852  3137  3183 W System.err: 	at java.lang.Thread.run(Thread.java:818)

I tried changing it to use SQLiteStatement.executeInsert(sql) instead, and I get a similar thing:

SQLiteStatement stmt = db.compileStatement(sql);
stmt.executeInsert();
System.err: android.database.sqlite.SQLiteException: table test_pt has no column named geom (code 1): , while compiling: INSERT INTO test_pt (id, name, geom) VALUES (1, 'test POINT #1', GeomFromText('POINT(0.0 0.0)', 4326))
04-30 14:41:42.549  6021  6045 W System.err: 	at org.spatialite.database.SQLiteConnection.nativePrepareStatement(Native Method)
04-30 14:41:42.549  6021  6045 W System.err: 	at org.spatialite.database.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:922)
04-30 14:41:42.549  6021  6045 W System.err: 	at org.spatialite.database.SQLiteConnection.prepare(SQLiteConnection.java:525)
04-30 14:41:42.549  6021  6045 W System.err: 	at org.spatialite.database.SQLiteSession.prepare(SQLiteSession.java:599)
04-30 14:41:42.549  6021  6045 W System.err: 	at org.spatialite.database.SQLiteProgram.<init>(SQLiteProgram.java:59)
04-30 14:41:42.549  6021  6045 W System.err: 	at org.spatialite.database.SQLiteStatement.<init>(SQLiteStatement.java:37)
04-30 14:41:42.549  6021  6045 W System.err: 	at org.spatialite.database.SQLiteDatabase.compileStatement(SQLiteDatabase.java:1011)
04-30 14:41:42.549  6021  6045 W System.err: 	at com.codename1.spatialite.AndroidSpatialiteDB.execute(AndroidSpatialiteDB.java:93)
04-30 14:41:42.549  6021  6045 W System.err: 	at com.codename1.spatialite.demo.SpatialiteDemo.start(SpatialiteDemo.java:106)
04-30 14:41:42.549  6021  6045 W System.err: 	at com.codename1.spatialite.demo.SpatialiteDemoStub.run(SpatialiteDemoStub.java:141)
04-30 14:41:42.549  6021  6045 W System.err: 	at com.codename1.ui.Display.processSerialCalls(Display.java:1129)
04-30 14:41:42.549  6021  6045 W System.err: 	at com.codename1.ui.Display.mainEDTLoop(Display.java:924)
04-30 14:41:42.549  6021  6045 W System.err: 	at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120)
04-30 14:41:42.549  6021  6045 W System.err: 	at com.codename1.impl.CodenameOneThread$1.run(CodenameOneThread.java:60)
04-30 14:41:42.549  6021  6045 W System.err: 	at java.lang.Thread.run(Thread.java:818)

Am I doing something wrong?

It appears the it is installed correctly as when I print out the version info using:

Cursor stmt01 = executeQuery("SELECT spatialite_version();");
            if (stmt01.next()) {
                sb.append("\t").append("SPATIALITE_VERSION: " + stmt01.getRow().getString(0));
                sb.append("\n");
            }
            stmt01.close();
            stmt01 = executeQuery("SELECT proj4_version();");
            if (stmt01.next()) {
                sb.append("\t").append("PROJ4_VERSION: " + stmt01.getRow().getString(0));
                sb.append("\n");
            }
            stmt01.close();
            stmt01 = executeQuery("SELECT geos_version();");
            if (stmt01.next()) {
                sb.append("\t").append("GEOS_VERSION: " + stmt01.getRow().getString(0));
                sb.append("\n");
            }
            stmt01.close();

(*Note: The Cursor/executeQuery are wrapper Classes/methods).

I get:

System.out: 	SPATIALITE_VERSION: 4.3.0a
04-30 14:41:42.494  6021  6045 I System.out: 	PROJ4_VERSION: Rel. 4.8.0, 6 March 2012
04-30 14:41:42.494  6021  6045 I System.out: 	GEOS_VERSION: 3.4.2-CAPI-1.8.2 r0

intersection function doesn't work

The intersection function doesn't return anything when intersecting two MULTILINESTRING, however the spatialite_gui application do returns. I've tested the same query with the same database and the intersection with android-spatialite doesn't show anything even when there are multiple rows as result.
This is my query, which returns 18 rows, but the column asd which represents the intersections as texts, only shows nulls

select name, astext(intersection(geometry, (select geometry from ln_data where name like '%desagรผ%'))) as asd
from ln_data
where
intersects(geometry, (select geometry from ln_data where name like '%desagรผ%'))

Need Version 2.0.0 Back

Hello

Please we can't seem to use version 2.0.0 as it is no longer available on jitpack repository.

implementation 'com.github.sevar83:android-spatialite:2.0.0'

ERROR: Failed to resolve: android-spatialite
Affected Modules: app

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugDuplicateClasses'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Could not find android-spatialite.jar (com.github.sevar83:android-spatialite:2.0.0).
     Searched in the following locations:
         https://jitpack.io/com/github/sevar83/android-spatialite/2.0.0/android-spatialite-2.0.0.jar

Further investigation shows that the version 2.0.0 is no longer available on Jitpack.io

I have tried to upgrade to version 2.0.1
But its throwing some Errors also.

021-05-02 06:55:33.549 1666-2271/com.asaasegps.fameko A/saasegps.famek: jni_internal.cc:814] JNI FatalError called: Native registration unable to find class 'org/spatialite/database/SQLiteConnection'; aborting...
/apex/com.android.runtime/lib/libopenjdkjvm.so (JVM_NativeLoad+248)
2021-05-02 06:55:33.989 1666-2271/com.asaasegps.fameko A/saasegps.famek: runtime.cc:630]   at java.lang.Runtime.nativeLoad(Native method)
2021-05-02 06:55:33.989 1666-2271/com.asaasegps.fameko A/saasegps.famek: runtime.cc:630]   at java.lang.Runtime.nativeLoad(Runtime.java:1115)
2021-05-02 06:55:33.989 1666-2271/com.asaasegps.fameko A/saasegps.famek: runtime.cc:630]   at java.lang.Runtime.loadLibrary0(Runtime.java:1069)
2021-05-02 06:55:33.989 1666-2271/com.asaasegps.fameko A/saasegps.famek: runtime.cc:630]   - locked <0x02fa8002> (a java.lang.Runtime)
2021-05-02 06:55:33.989 1666-2271/com.asaasegps.fameko A/saasegps.famek: runtime.cc:630]   at java.lang.Runtime.loadLibrary0(Runtime.java:1007)
2021-05-02 06:55:33.989 1666-2271/com.asaasegps.fameko A/saasegps.famek: runtime.cc:630]   at java.lang.System.loadLibrary(System.java:1667)
2021-05-02 06:55:33.989 1666-2271/com.asaasegps.fameko A/saasegps.famek: runtime.cc:630]   at org.spatialite.database.SQLiteDatabase.<clinit>(SQLiteDatabase.java:81)
2021-05-02 06:55:33.989 1666-2271/com.asaasegps.fameko A/saasegps.famek: runtime.cc:630]   at org.spatialite.database.SQLiteDatabase.openDatabase(SQLiteDatabase.java:670)

Please can you host back the version 2.0.0

Thank you

Suspect undocumented dependency issue?

Hi there โ€“ I'm not a super-expert of Android development nor of Gradle, so please feel free to tell me I'm just missing something :)

Basically, I've noticed the following behaviour when trying to add android-spatialite to my app.

This works:

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    testImplementation 'junit:junit:4.12'
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.google.android.gms:play-services-location:11.0.0'
    implementation 'com.android.support:design:28.0.0'

    // Spatialite
    implementation 'com.github.sevar83:android-spatialite:2.0.0'
    

But it I change the Spatialite reference to

    implementation 'com.github.sevar83:android-spatialite:2.0.1'

the app crashes on calling getReadableDatabase(); with a very long stack trace that suggests the library is not fully imported:

A/sso.unpopulate: jni_internal.cc:811] JNI FatalError called: Native registration unable to find class 'org/spatialite/database/SQLiteConnection'; aborting...

A/sso.unpopulate: runtime.cc:630] Runtime aborting...
    runtime.cc:630] All threads:
    runtime.cc:630] DALVIK THREADS (24):
    runtime.cc:630] "main" prio=10 tid=1 Runnable
    runtime.cc:630]   | group="" sCount=0 dsCount=0 flags=0 obj=0x7218e1f0 self=0xf0337800
    runtime.cc:630]   | sysTid=697 nice=-10 cgrp=default sched=0/0 handle=0xf08ecdc8
    runtime.cc:630]   | state=R schedstat=( 5363312960 3502357720 3153 ) utm=395 stm=140 core=0 HZ=100
    runtime.cc:630]   | stack=0xff7f0000-0xff7f2000 stackSize=8192KB
    runtime.cc:630]   | held mutexes= "abort lock" "mutator lock"(shared held)
    runtime.cc:630]   native: #00 pc 00493b03  /apex/com.android.runtime/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+115)
    runtime.cc:630]   native: #01 pc 005b1f62  /apex/com.android.runtime/lib/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, bool, BacktraceMap*, bool) const+994)
    runtime.cc:630]   native: #02 pc 005acdf1  /apex/com.android.runtime/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, bool, BacktraceMap*, bool) const+65)
    runtime.cc:630]   native: #03 pc 005d2c61  /apex/com.android.runtime/lib/libart.so (art::DumpCheckpoint::Run(art::Thread*)+929)
    runtime.cc:630]   native: #04 pc 005cab96  /apex/com.android.runtime/lib/libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*)+486)
    runtime.cc:630]   native: #05 pc 005c9b74  /apex/com.android.runtime/lib/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, bool)+1620)
    runtime.cc:630]   native: #06 pc 00579680  /apex/com.android.runtime/lib/libart.so (art::AbortState::DumpAllThreads(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, art::Thread*) const+448)
    runtime.cc:630]   native: #07 pc 00564ce0  /apex/com.android.runtime/lib/libart.so (art::Runtime::Abort(char const*)+1536)
    runtime.cc:630]   native: #08 pc 000249b3  /apex/com.android.runtime/lib/libartbase.so (_ZNSt3__110__function6__funcIPFvPKcENS_9allocatorIS5_EES4_EclEOS3_+35)
    runtime.cc:630]   native: #09 pc 0000bac7  /system/lib/libbase.so (android::base::LogMessage::~LogMessage()+727)
    runtime.cc:630]   native: #10 pc 003f5416  /apex/com.android.runtime/lib/libart.so (art::JNI::FatalError(_JNIEnv*, char const*)+182)
    runtime.cc:630]   native: #11 pc 003bf49a  /apex/com.android.runtime/lib/libart.so (art::(anonymous namespace)::CheckJNI::FatalError(_JNIEnv*, char const*)+906)
    runtime.cc:630]   native: #12 pc 0003d198  /data/app/net.puntofisso.unpopulated-RzH0YjnAkLulsSnKfd3Q6w==/lib/x86/libandroid_spatialite.so (jniRegisterNativeMethods+104)
A/sso.unpopulate: runtime.cc:630]   native: #13 pc 0003984b  /data/app/net.puntofisso.unpopulated-RzH0YjnAkLulsSnKfd3Q6w==/lib/x86/libandroid_spatialite.so (android::register_android_database_SQLiteConnection(_JNIEnv*)+363)
    runtime.cc:630]   native: #14 pc 000398b7  /data/app/net.puntofisso.unpopulated-RzH0YjnAkLulsSnKfd3Q6w==/lib/x86/libandroid_spatialite.so (JNI_OnLoad+87)
    runtime.cc:630]   native: #15 pc 003e9925  /apex/com.android.runtime/lib/libart.so (art::JavaVMExt::LoadNativeLibrary(_JNIEnv*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, _jobject*, _jclass*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>*)+4645)
    runtime.cc:630]   native: #16 pc 00004230  /apex/com.android.runtime/lib/libopenjdkjvm.so (JVM_NativeLoad+448)
    runtime.cc:630]   native: #17 pc 00028e26  /apex/com.android.runtime/lib/libopenjdk.so (Runtime_nativeLoad+38)
    runtime.cc:630]   at java.lang.Runtime.nativeLoad(Native method)
    runtime.cc:630]   at java.lang.Runtime.nativeLoad(Runtime.java:1115)
    runtime.cc:630]   at java.lang.Runtime.loadLibrary0(Runtime.java:1069)
    runtime.cc:630]   - locked <0x0ce9808a> (a java.lang.Runtime)
    runtime.cc:630]   at java.lang.Runtime.loadLibrary0(Runtime.java:1007)
    runtime.cc:630]   at java.lang.System.loadLibrary(System.java:1667)
    runtime.cc:630]   at org.spatialite.database.SQLiteDatabase.<clinit>(SQLiteDatabase.java:81)
    runtime.cc:630]   at org.spatialite.database.SQLiteDatabase.openDatabase(SQLiteDatabase.java:723)
    runtime.cc:630]   at org.spatialite.database.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:237)
    runtime.cc:630]   at org.spatialite.database.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:195)
    runtime.cc:630]   - locked <0x0951f6fb> (a net.puntofisso.unpopulated.SpatialiteFileDbHelper)
    runtime.cc:630]   at net.puntofisso.unpopulated.MainActivity.getBiomeFromLocation(MainActivity.java:705)
    runtime.cc:630]   at net.puntofisso.unpopulated.MainActivity.getBiomeSoundscape(MainActivity.java:588)
    runtime.cc:630]   at net.puntofisso.unpopulated.MainActivity.access$600(MainActivity.java:81)
    runtime.cc:630]   at net.puntofisso.unpopulated.MainActivity$4.onClick(MainActivity.java:212)
    runtime.cc:630]   at android.view.View.performClick(View.java:7125)
    runtime.cc:630]   at android.view.View.performClickInternal(View.java:7102)
    runtime.cc:630]   at android.view.View.access$3500(View.java:801)
    runtime.cc:630]   at android.view.View$PerformClick.run(View.java:27336)
    runtime.cc:630]   at android.os.Handler.handleCallback(Handler.java:883)
    runtime.cc:630]   at android.os.Handler.dispatchMessage(Handler.java:100)
    runtime.cc:630]   at android.os.Looper.loop(Looper.java:214)
    runtime.cc:630]   at android.app.ActivityThread.main(ActivityThread.java:7356)
    runtime.cc:630]   at java.lang.reflect.Method.invoke(Native method)
    runtime.cc:630]   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    runtime.cc:630]   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
    runtime.cc:630] 
    runtime.cc:630] "Jit thread pool worker thread 0" prio=10 tid=4 Native
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c80000 self=0xdd011c00
    runtime.cc:630]   | sysTid=705 nice=0 cgrp=default sched=0/0 handle=0xdcf04d90
    runtime.cc:630]   | state=S schedstat=( 156085611 220459625 114 ) utm=7 stm=8 core=1 HZ=100
    runtime.cc:630]   | stack=0xdce06000-0xdce08000 stackSize=1023KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/705/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 00092328  /apex/com.android.runtime/lib/bionic/libc.so (syscall+40)
    runtime.cc:630]   native: #02 pc 00150802  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+114)
A/sso.unpopulate: runtime.cc:630]   native: #03 pc 00150783  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::Wait(art::Thread*)+35)
    runtime.cc:630]   native: #04 pc 005d4aa5  /apex/com.android.runtime/lib/libart.so (art::ThreadPool::GetTask(art::Thread*)+261)
    runtime.cc:630]   native: #05 pc 005d3c05  /apex/com.android.runtime/lib/libart.so (art::ThreadPoolWorker::Run()+133)
    runtime.cc:630]   native: #06 pc 005d369f  /apex/com.android.runtime/lib/libart.so (art::ThreadPoolWorker::Callback(void*)+239)
    runtime.cc:630]   native: #07 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #08 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
    runtime.cc:630] "Signal Catcher" prio=10 tid=5 WaitingInMainSignalCatcherLoop
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c80078 self=0xe51a8600
    runtime.cc:630]   | sysTid=708 nice=0 cgrp=default sched=0/0 handle=0xdce00230
    runtime.cc:630]   | state=S schedstat=( 373852 64678927 2 ) utm=0 stm=0 core=0 HZ=100
    runtime.cc:630]   | stack=0xdcd05000-0xdcd07000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/708/stack)
    runtime.cc:630]   native: #00 pc 00000ad9  [vdso] (__kernel_vsyscall+9)
    runtime.cc:630]   native: #01 pc 00101671  /apex/com.android.runtime/lib/bionic/libc.so (__rt_sigtimedwait+33)
    runtime.cc:630]   native: #02 pc 000bb549  /apex/com.android.runtime/lib/bionic/libc.so (sigwait+73)
    runtime.cc:630]   native: #03 pc 0058bae9  /apex/com.android.runtime/lib/libart.so (art::SignalCatcher::WaitForSignal(art::Thread*, art::SignalSet&)+265)
    runtime.cc:630]   native: #04 pc 0058a6df  /apex/com.android.runtime/lib/libart.so (art::SignalCatcher::Run(void*)+479)
    runtime.cc:630]   native: #05 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #06 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
    runtime.cc:630] "ADB-JDWP Connection Control Thread" prio=10 tid=6 WaitingInMainDebuggerLoop
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c800f0 self=0xdd025800
    runtime.cc:630]   | sysTid=709 nice=0 cgrp=default sched=0/0 handle=0xdccff230
    runtime.cc:630]   | state=S schedstat=( 68550945 380395901 45 ) utm=3 stm=3 core=1 HZ=100
    runtime.cc:630]   | stack=0xdcc04000-0xdcc06000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/709/stack)
    runtime.cc:630]   native: #00 pc 00000ad9  [vdso] (__kernel_vsyscall+9)
    runtime.cc:630]   native: #01 pc 001013d6  /apex/com.android.runtime/lib/bionic/libc.so (__ppoll+38)
    runtime.cc:630]   native: #02 pc 000b89ea  /apex/com.android.runtime/lib/bionic/libc.so (poll+90)
    runtime.cc:630]   native: #03 pc 000d786f  /apex/com.android.runtime/lib/bionic/libc.so (__poll_chk+47)
A/sso.unpopulate: runtime.cc:630]   native: #04 pc 0000835b  /apex/com.android.runtime/lib/libadbconnection.so (adbconnection::AdbConnectionState::RunPollLoop(art::Thread*)+1131)
    runtime.cc:630]   native: #05 pc 000063b0  /apex/com.android.runtime/lib/libadbconnection.so (adbconnection::CallbackFunction(void*)+1152)
    runtime.cc:630]   native: #06 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #07 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
A/sso.unpopulate: runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
    runtime.cc:630] "HeapTaskDaemon" prio=10 tid=7 WaitingForTaskProcessor
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c80618 self=0xf03ab000
    runtime.cc:630]   | sysTid=710 nice=4 cgrp=default sched=0/0 handle=0xc6b9a230
A/sso.unpopulate: runtime.cc:630]   | state=S schedstat=( 150773039 1023154846 103 ) utm=3 stm=11 core=0 HZ=100
    runtime.cc:630]   | stack=0xc6a97000-0xc6a99000 stackSize=1040KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/710/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 00092328  /apex/com.android.runtime/lib/bionic/libc.so (syscall+40)
    runtime.cc:630]   native: #02 pc 00150802  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+114)
    runtime.cc:630]   native: #03 pc 00150783  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::Wait(art::Thread*)+35)
    runtime.cc:630]   native: #04 pc 002ce252  /apex/com.android.runtime/lib/libart.so (art::gc::TaskProcessor::GetTask(art::Thread*)+418)
    runtime.cc:630]   native: #05 pc 002cec34  /apex/com.android.runtime/lib/libart.so (art::gc::TaskProcessor::RunAllTasks(art::Thread*)+84)
    runtime.cc:630]   native: #06 pc 004a39c5  /apex/com.android.runtime/lib/libart.so (art::VMRuntime_runHeapTasks(_JNIEnv*, _jobject*)+53)
    runtime.cc:630]   at dalvik.system.VMRuntime.runHeapTasks(Native method)
    runtime.cc:630]   at java.lang.Daemons$HeapTaskDaemon.runInternal(Daemons.java:523)
    runtime.cc:630]   at java.lang.Daemons$Daemon.run(Daemons.java:137)
    runtime.cc:630]   at java.lang.Thread.run(Thread.java:919)
    runtime.cc:630] 
A/sso.unpopulate: runtime.cc:630] "ReferenceQueueDaemon" prio=10 tid=8 Waiting
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c80168 self=0xf03b0400
    runtime.cc:630]   | sysTid=711 nice=4 cgrp=default sched=0/0 handle=0xc6a91230
    runtime.cc:630]   | state=S schedstat=( 4906462 21030872 7 ) utm=0 stm=0 core=0 HZ=100
A/sso.unpopulate: runtime.cc:630]   | stack=0xc698e000-0xc6990000 stackSize=1040KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/711/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 00092328  /apex/com.android.runtime/lib/bionic/libc.so (syscall+40)
    runtime.cc:630]   native: #02 pc 00150802  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+114)
    runtime.cc:630]   native: #03 pc 00150783  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::Wait(art::Thread*)+35)
    runtime.cc:630]   native: #04 pc 0048e466  /apex/com.android.runtime/lib/libart.so (art::Monitor::Wait(art::Thread*, long long, int, bool, art::ThreadState)+646)
    runtime.cc:630]   native: #05 pc 00490374  /apex/com.android.runtime/lib/libart.so (art::Monitor::Wait(art::Thread*, art::ObjPtr<art::mirror::Object>, long long, int, bool, art::ThreadState)+292)
    runtime.cc:630]   native: #06 pc 004b0f61  /apex/com.android.runtime/lib/libart.so (art::Object_waitJI(_JNIEnv*, _jobject*, long long, int)+97)
    runtime.cc:630]   at java.lang.Object.wait(Native method)
    runtime.cc:630]   - waiting on <0x0248d318> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
    runtime.cc:630]   at java.lang.Object.wait(Object.java:442)
    runtime.cc:630]   at java.lang.Object.wait(Object.java:568)
    runtime.cc:630]   at java.lang.Daemons$ReferenceQueueDaemon.runInternal(Daemons.java:215)
    runtime.cc:630]   - locked <0x0248d318> (a java.lang.Class<java.lang.ref.ReferenceQueue>)
    runtime.cc:630]   at java.lang.Daemons$Daemon.run(Daemons.java:137)
    runtime.cc:630]   at java.lang.Thread.run(Thread.java:919)
    runtime.cc:630] 
    runtime.cc:630] "FinalizerWatchdogDaemon" prio=10 tid=9 Waiting
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c801e0 self=0xe51a5c00
    runtime.cc:630]   | sysTid=713 nice=4 cgrp=default sched=0/0 handle=0xc687f230
    runtime.cc:630]   | state=S schedstat=( 760352 25585730 8 ) utm=0 stm=0 core=1 HZ=100
A/sso.unpopulate: runtime.cc:630]   | stack=0xc677c000-0xc677e000 stackSize=1040KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/713/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 00092328  /apex/com.android.runtime/lib/bionic/libc.so (syscall+40)
    runtime.cc:630]   native: #02 pc 00150802  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+114)
    runtime.cc:630]   native: #03 pc 00150783  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::Wait(art::Thread*)+35)
    runtime.cc:630]   native: #04 pc 0048e466  /apex/com.android.runtime/lib/libart.so (art::Monitor::Wait(art::Thread*, long long, int, bool, art::ThreadState)+646)
    runtime.cc:630]   native: #05 pc 00490374  /apex/com.android.runtime/lib/libart.so (art::Monitor::Wait(art::Thread*, art::ObjPtr<art::mirror::Object>, long long, int, bool, art::ThreadState)+292)
    runtime.cc:630]   native: #06 pc 004b0f61  /apex/com.android.runtime/lib/libart.so (art::Object_waitJI(_JNIEnv*, _jobject*, long long, int)+97)
    runtime.cc:630]   at java.lang.Object.wait(Native method)
    runtime.cc:630]   - waiting on <0x05e36171> (a java.lang.Daemons$FinalizerWatchdogDaemon)
    runtime.cc:630]   at java.lang.Object.wait(Object.java:442)
    runtime.cc:630]   at java.lang.Object.wait(Object.java:568)
    runtime.cc:630]   at java.lang.Daemons$FinalizerWatchdogDaemon.sleepUntilNeeded(Daemons.java:339)
    runtime.cc:630]   - locked <0x05e36171> (a java.lang.Daemons$FinalizerWatchdogDaemon)
    runtime.cc:630]   at java.lang.Daemons$FinalizerWatchdogDaemon.runInternal(Daemons.java:319)
    runtime.cc:630]   at java.lang.Daemons$Daemon.run(Daemons.java:137)
    runtime.cc:630]   at java.lang.Thread.run(Thread.java:919)
    runtime.cc:630] 
    runtime.cc:630] "FinalizerDaemon" prio=10 tid=10 Waiting
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c80258 self=0xe51a4e00
    runtime.cc:630]   | sysTid=712 nice=4 cgrp=default sched=0/0 handle=0xc6988230
    runtime.cc:630]   | state=S schedstat=( 24141022 117019130 26 ) utm=2 stm=0 core=0 HZ=100
    runtime.cc:630]   | stack=0xc6885000-0xc6887000 stackSize=1040KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/712/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 00092328  /apex/com.android.runtime/lib/bionic/libc.so (syscall+40)
    runtime.cc:630]   native: #02 pc 00150802  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+114)
A/sso.unpopulate: runtime.cc:630]   native: #03 pc 00150783  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::Wait(art::Thread*)+35)
    runtime.cc:630]   native: #04 pc 0048e466  /apex/com.android.runtime/lib/libart.so (art::Monitor::Wait(art::Thread*, long long, int, bool, art::ThreadState)+646)
    runtime.cc:630]   native: #05 pc 00490374  /apex/com.android.runtime/lib/libart.so (art::Monitor::Wait(art::Thread*, art::ObjPtr<art::mirror::Object>, long long, int, bool, art::ThreadState)+292)
    runtime.cc:630]   native: #06 pc 004b0f61  /apex/com.android.runtime/lib/libart.so (art::Object_waitJI(_JNIEnv*, _jobject*, long long, int)+97)
    runtime.cc:630]   at java.lang.Object.wait(Native method)
    runtime.cc:630]   - waiting on <0x07e71b56> (a java.lang.Object)
    runtime.cc:630]   at java.lang.Object.wait(Object.java:442)
    runtime.cc:630]   at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:190)
    runtime.cc:630]   - locked <0x07e71b56> (a java.lang.Object)
    runtime.cc:630]   at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:211)
    runtime.cc:630]   at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:271)
    runtime.cc:630]   at java.lang.Daemons$Daemon.run(Daemons.java:137)
    runtime.cc:630]   at java.lang.Thread.run(Thread.java:919)
    runtime.cc:630] 
    runtime.cc:630] "Binder:697_1" prio=10 tid=11 Native
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c802d0 self=0xe51ec200
    runtime.cc:630]   | sysTid=714 nice=0 cgrp=default sched=0/0 handle=0xc6678230
    runtime.cc:630]   | state=S schedstat=( 7105613 44614408 5 ) utm=0 stm=0 core=0 HZ=100
A/sso.unpopulate: runtime.cc:630]   | stack=0xc657d000-0xc657f000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/714/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 001012ac  /apex/com.android.runtime/lib/bionic/libc.so (__ioctl+28)
    runtime.cc:630]   native: #02 pc 000b65bc  /apex/com.android.runtime/lib/bionic/libc.so (ioctl+60)
    runtime.cc:630]   native: #03 pc 000545f7  /system/lib/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+391)
    runtime.cc:630]   native: #04 pc 0005481a  /system/lib/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+42)
    runtime.cc:630]   native: #05 pc 00055218  /system/lib/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+72)
    runtime.cc:630]   native: #06 pc 00082019  /system/lib/libbinder.so (android::PoolThread::threadLoop()+41)
    runtime.cc:630]   native: #07 pc 00014166  /system/lib/libutils.so (android::Thread::_threadLoop(void*)+342)
    runtime.cc:630]   native: #08 pc 000b660b  /system/lib/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+171)
    runtime.cc:630]   native: #09 pc 00013aa6  /system/lib/libutils.so (thread_data_t::trampoline(thread_data_t const*)+246)
    runtime.cc:630]   native: #10 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #11 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
    runtime.cc:630] "Binder:697_2" prio=10 tid=12 Native
A/sso.unpopulate: runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12ca1f18 self=0xdd02e400
    runtime.cc:630]   | sysTid=715 nice=0 cgrp=default sched=0/0 handle=0xc6577230
    runtime.cc:630]   | state=S schedstat=( 80771813 1089585359 51 ) utm=4 stm=4 core=1 HZ=100
    runtime.cc:630]   | stack=0xc647c000-0xc647e000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/715/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 001012ac  /apex/com.android.runtime/lib/bionic/libc.so (__ioctl+28)
    runtime.cc:630]   native: #02 pc 000b65bc  /apex/com.android.runtime/lib/bionic/libc.so (ioctl+60)
    runtime.cc:630]   native: #03 pc 000545f7  /system/lib/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+391)
    runtime.cc:630]   native: #04 pc 0005481a  /system/lib/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+42)
    runtime.cc:630]   native: #05 pc 00055218  /system/lib/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+72)
    runtime.cc:630]   native: #06 pc 00082019  /system/lib/libbinder.so (android::PoolThread::threadLoop()+41)
    runtime.cc:630]   native: #07 pc 00014166  /system/lib/libutils.so (android::Thread::_threadLoop(void*)+342)
    runtime.cc:630]   native: #08 pc 000b660b  /system/lib/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+171)
    runtime.cc:630]   native: #09 pc 00013aa6  /system/lib/libutils.so (thread_data_t::trampoline(thread_data_t const*)+246)
    runtime.cc:630]   native: #10 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
A/sso.unpopulate: runtime.cc:630]   native: #11 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
    runtime.cc:630] "Binder:697_3" prio=10 tid=13 Native
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c80348 self=0xd9a25a00
    runtime.cc:630]   | sysTid=733 nice=0 cgrp=default sched=0/0 handle=0xc6476230
    runtime.cc:630]   | state=S schedstat=( 563699 125035764 3 ) utm=0 stm=0 core=1 HZ=100
    runtime.cc:630]   | stack=0xc637b000-0xc637d000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/733/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 001012ac  /apex/com.android.runtime/lib/bionic/libc.so (__ioctl+28)
    runtime.cc:630]   native: #02 pc 000b65bc  /apex/com.android.runtime/lib/bionic/libc.so (ioctl+60)
    runtime.cc:630]   native: #03 pc 000545f7  /system/lib/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+391)
    runtime.cc:630]   native: #04 pc 0005481a  /system/lib/libbinder.so (android::IPCThreadState::getAndExecuteCommand()+42)
    runtime.cc:630]   native: #05 pc 00055218  /system/lib/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+72)
    runtime.cc:630]   native: #06 pc 00082019  /system/lib/libbinder.so (android::PoolThread::threadLoop()+41)
    runtime.cc:630]   native: #07 pc 00014166  /system/lib/libutils.so (android::Thread::_threadLoop(void*)+342)
    runtime.cc:630]   native: #08 pc 000b660b  /system/lib/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+171)
    runtime.cc:630]   native: #09 pc 00013aa6  /system/lib/libutils.so (thread_data_t::trampoline(thread_data_t const*)+246)
    runtime.cc:630]   native: #10 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #11 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
    runtime.cc:630] "JDWP Transport Listener: dt_fd_forward" prio=10 tid=14 Native
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c803c0 self=0xdd026600
    runtime.cc:630]   | sysTid=765 nice=0 cgrp=default sched=0/0 handle=0xc5fbe230
    runtime.cc:630]   | state=S schedstat=( 3395615702 3472336671 4321 ) utm=221 stm=118 core=1 HZ=100
    runtime.cc:630]   | stack=0xc5ec3000-0xc5ec5000 stackSize=1008KB
A/sso.unpopulate: runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/765/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 00092328  /apex/com.android.runtime/lib/bionic/libc.so (syscall+40)
    runtime.cc:630]   native: #02 pc 000ae3d5  /apex/com.android.runtime/lib/bionic/libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*)+133)
    runtime.cc:630]   native: #03 pc 00119c1e  /apex/com.android.runtime/lib/bionic/libc.so (pthread_cond_wait+62)
    runtime.cc:630]   native: #04 pc 0007489f  /system/lib/libc++.so (std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&)+47)
    runtime.cc:630]   native: #05 pc 000811dd  /apex/com.android.runtime/lib/libopenjdkjvmti.so (_ZN12openjdkjvmti12JvmtiMonitor4WaitIZNS0_4WaitEPN3art6ThreadEEUlRNSt3__111unique_lockINS5_5mutexEEEE_EEbS4_T_+125)
A/sso.unpopulate: runtime.cc:630]   native: #06 pc 0008047d  /apex/com.android.runtime/lib/libopenjdkjvmti.so (openjdkjvmti::MonitorUtil::RawMonitorWait(_jvmtiEnv*, _jrawMonitorID*, long long)+189)
    runtime.cc:630]   native: #07 pc 000459c8  /apex/com.android.runtime/lib/libopenjdkjvmti.so (openjdkjvmti::JvmtiFunctions::RawMonitorWait(_jvmtiEnv*, _jrawMonitorID*, long long)+72)
    runtime.cc:630]   native: #08 pc 00040c51  /apex/com.android.runtime/lib/libjdwp.so (debugMonitorWait+49)
    runtime.cc:630]   native: #09 pc 0002621d  /apex/com.android.runtime/lib/libjdwp.so (debugLoop_run+173)
    runtime.cc:630]   native: #10 pc 0003bada  /apex/com.android.runtime/lib/libjdwp.so (connectionInitiated+170)
    runtime.cc:630]   native: #11 pc 0003b6e9  /apex/com.android.runtime/lib/libjdwp.so (acceptThread+297)
    runtime.cc:630]   native: #12 pc 000ab362  /apex/com.android.runtime/lib/libopenjdkjvmti.so (openjdkjvmti::AgentCallback(void*)+1170)
    runtime.cc:630]   native: #13 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #14 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
    runtime.cc:630] "JDWP Event Helper Thread" prio=10 tid=15 Native
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c80438 self=0xd9a2e600
    runtime.cc:630]   | sysTid=766 nice=0 cgrp=default sched=0/0 handle=0xc5ebd230
    runtime.cc:630]   | state=S schedstat=( 150492789 535015313 764 ) utm=4 stm=10 core=1 HZ=100
    runtime.cc:630]   | stack=0xc5dc2000-0xc5dc4000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/766/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 00092328  /apex/com.android.runtime/lib/bionic/libc.so (syscall+40)
    runtime.cc:630]   native: #02 pc 000ae3d5  /apex/com.android.runtime/lib/bionic/libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*)+133)
    runtime.cc:630]   native: #03 pc 00119c1e  /apex/com.android.runtime/lib/bionic/libc.so (pthread_cond_wait+62)
    runtime.cc:630]   native: #04 pc 0007489f  /system/lib/libc++.so (std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&)+47)
    runtime.cc:630]   native: #05 pc 000811dd  /apex/com.android.runtime/lib/libopenjdkjvmti.so (_ZN12openjdkjvmti12JvmtiMonitor4WaitIZNS0_4WaitEPN3art6ThreadEEUlRNSt3__111unique_lockINS5_5mutexEEEE_EEbS4_T_+125)
    runtime.cc:630]   native: #06 pc 0008047d  /apex/com.android.runtime/lib/libopenjdkjvmti.so (openjdkjvmti::MonitorUtil::RawMonitorWait(_jvmtiEnv*, _jrawMonitorID*, long long)+189)
    runtime.cc:630]   native: #07 pc 000459c8  /apex/com.android.runtime/lib/libopenjdkjvmti.so (openjdkjvmti::JvmtiFunctions::RawMonitorWait(_jvmtiEnv*, _jrawMonitorID*, long long)+72)
    runtime.cc:630]   native: #08 pc 00040c51  /apex/com.android.runtime/lib/libjdwp.so (debugMonitorWait+49)
    runtime.cc:630]   native: #09 pc 0002e55d  /apex/com.android.runtime/lib/libjdwp.so (commandLoop+173)
    runtime.cc:630]   native: #10 pc 000ab362  /apex/com.android.runtime/lib/libopenjdkjvmti.so (openjdkjvmti::AgentCallback(void*)+1170)
    runtime.cc:630]   native: #11 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #12 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
A/sso.unpopulate: runtime.cc:630] 
    runtime.cc:630] "JDWP Command Reader" prio=10 tid=16 Native
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c804b0 self=0xc60a5e00
    runtime.cc:630]   | sysTid=767 nice=0 cgrp=default sched=0/0 handle=0xc5dbc230
    runtime.cc:630]   | state=S schedstat=( 546303444 408544803 2424 ) utm=3 stm=50 core=1 HZ=100
    runtime.cc:630]   | stack=0xc5cc1000-0xc5cc3000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/767/stack)
    runtime.cc:630]   native: #00 pc 00000ad9  [vdso] (__kernel_vsyscall+9)
    runtime.cc:630]   native: #01 pc 001013d6  /apex/com.android.runtime/lib/bionic/libc.so (__ppoll+38)
    runtime.cc:630]   native: #02 pc 000b89ea  /apex/com.android.runtime/lib/bionic/libc.so (poll+90)
    runtime.cc:630]   native: #03 pc 000d786f  /apex/com.android.runtime/lib/bionic/libc.so (__poll_chk+47)
    runtime.cc:630]   native: #04 pc 00004281  /apex/com.android.runtime/lib/libdt_fd_forward.so (dt_fd_forward::FdForwardTransport::ReadFully(void*, unsigned int)+305)
    runtime.cc:630]   native: #05 pc 000050bb  /apex/com.android.runtime/lib/libdt_fd_forward.so (dt_fd_forward::PacketReader::ReadFully()+123)
    runtime.cc:630]   native: #06 pc 00005a87  /apex/com.android.runtime/lib/libdt_fd_forward.so (dt_fd_forward::JdwpTransportFunctions::ReadPacket(_jdwpTransportEnv*, jdwpPacket*)+71)
    runtime.cc:630]   native: #07 pc 0003b90c  /apex/com.android.runtime/lib/libjdwp.so (transport_receivePacket+44)
    runtime.cc:630]   native: #08 pc 000266c8  /apex/com.android.runtime/lib/libjdwp.so (reader+584)
    runtime.cc:630]   native: #09 pc 000ab362  /apex/com.android.runtime/lib/libopenjdkjvmti.so (openjdkjvmti::AgentCallback(void*)+1170)
    runtime.cc:630]   native: #10 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #11 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
    runtime.cc:630] "Profile Saver" prio=10 tid=17 Native
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c80528 self=0xd9a52200
    runtime.cc:630]   | sysTid=769 nice=9 cgrp=default sched=0/0 handle=0xc53aa230
    runtime.cc:630]   | state=S schedstat=( 12940587 277563032 12 ) utm=1 stm=0 core=1 HZ=100
    runtime.cc:630]   | stack=0xc52af000-0xc52b1000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/769/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 00092328  /apex/com.android.runtime/lib/bionic/libc.so (syscall+40)
    runtime.cc:630]   native: #02 pc 00150802  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+114)
    runtime.cc:630]   native: #03 pc 00150783  /apex/com.android.runtime/lib/libart.so (art::ConditionVariable::Wait(art::Thread*)+35)
    runtime.cc:630]   native: #04 pc 003af586  /apex/com.android.runtime/lib/libart.so (art::ProfileSaver::Run()+518)
    runtime.cc:630]   native: #05 pc 003b42cd  /apex/com.android.runtime/lib/libart.so (art::ProfileSaver::RunProfileSaverThread(void*)+93)
A/sso.unpopulate: runtime.cc:630]   native: #06 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #07 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
    runtime.cc:630] "RenderThread" prio=10 tid=18 Native
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x12c805a0 self=0xdd027400
    runtime.cc:630]   | sysTid=770 nice=-10 cgrp=default sched=0/0 handle=0xc523b230
    runtime.cc:630]   | state=S schedstat=( 679128032 439248668 533 ) utm=9 stm=58 core=1 HZ=100
    runtime.cc:630]   | stack=0xc5140000-0xc5142000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/770/stack)
    runtime.cc:630]   native: #00 pc 00000ad9  [vdso] (__kernel_vsyscall+9)
    runtime.cc:630]   native: #01 pc 0010102b  /apex/com.android.runtime/lib/bionic/libc.so (__epoll_pwait+43)
    runtime.cc:630]   native: #02 pc 000bd65d  /apex/com.android.runtime/lib/bionic/libc.so (epoll_wait+45)
    runtime.cc:630]   native: #03 pc 000190b0  /system/lib/libutils.so (android::Looper::pollInner(int)+176)
    runtime.cc:630]   native: #04 pc 00018f4e  /system/lib/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+62)
    runtime.cc:630]   native: #05 pc 002cf241  /system/lib/libhwui.so (android::uirenderer::ThreadBase::waitForWork()+145)
    runtime.cc:630]   native: #06 pc 002cf0f7  /system/lib/libhwui.so (android::uirenderer::renderthread::RenderThread::threadLoop()+119)
    runtime.cc:630]   native: #07 pc 00014166  /system/lib/libutils.so (android::Thread::_threadLoop(void*)+342)
    runtime.cc:630]   native: #08 pc 00013aa6  /system/lib/libutils.so (thread_data_t::trampoline(thread_data_t const*)+246)
    runtime.cc:630]   native: #09 pc 0011a8e5  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53)
    runtime.cc:630]   native: #10 pc 000af6a7  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71)
    runtime.cc:630]   (no managed stack frames)
    runtime.cc:630] 
A/sso.unpopulate: runtime.cc:630] "Binder:697_4" prio=10 tid=19 Native
    runtime.cc:630]   | group="" sCount=1 dsCount=0 flags=1 obj=0x130407f8 self=0xd9a19600
    runtime.cc:630]   | sysTid=777 nice=0 cgrp=default sched=0/0 handle=0xc513a230
    runtime.cc:630]   | state=S schedstat=( 87964216 430560715 79 ) utm=7 stm=1 core=1 HZ=100
    runtime.cc:630]   | stack=0xc503f000-0xc5041000 stackSize=1008KB
    runtime.cc:630]   | held mutexes=
    runtime.cc:630]   kernel: (couldn't read /proc/self/task/777/stack)
    runtime.cc:630]   native: #00 pc 00000ad7  [vdso] (__kernel_vsyscall+7)
    runtime.cc:630]   native: #01 pc 001012ac  /apex/com.android.runtime/lib/bionic/libc.so (__ioctl+28)
    runtime.cc:630]   native: #02 pc 000b65bc  /apex/com.android.runtime/lib/bionic/libc.so (ioctl+60)
    runtime.cc:630]   native: #03 pc 000545f7  /system/lib/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+391)
A/libc: Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 697 (sso.unpopulated), pid 697 (sso.unpopulated)

Is there some undocumented dependency issue with v2.0.1?

export shape files

Hello,

I need to export shape files in android. so does any query exists to accomplish this task?

best

AddGeometryColumn Error (InitSpatialMetadata related)

Hi,

I am trying to create spatialite db but no luck.
Here is my code to

getWritableDatabase().rawQuery("select InitSpatialMetadata(1)", null);
String sqlCizim = "create table CIZIM(OBJECTID INTEGER PRIMARY KEY AUTOINCREMENT, KATMAN TEXT, VERI TEXT, TARIH TEXT)";
getWritableDatabase().rawQuery(sqlCizim, null);
String sqlCizimGeometri = "select AddGeometryColumn('CIZIM', 'GEOM', 3857,'GEOMETRY', 'XY')";
getWritableDatabase().rawQuery(sqlCizimGeometri, null);

How to use Spatialite Virtual Routing Network

Hi, Thanks for great library.
Am using the library to run spatialite queries which works perfects.

But when i tried to run Spatialite virtual routing query based on this link

Am getting this error

no such module: VirtualRouting (code 1): , while compiling: SELECT * FROM roads_net WHERE NodeFrom=? AND NodeTo=?

on Android but when i run it on the Spatialite_GUI and Spatialite CLI everything works perfect.

Thanks for your support
Best regards.

Failed to resolve: android-spatialite

I am getting this error while trying to download dependencies. I looked for the package in Maven central and Jcenter and it does not exist. Was it removed?

a more recent build

is there a chance for a more recent build with spatialite 5.0.1 with latest sqllite,geos,proj,etc ? i tried doing that the last 2 days but did not succeed too many issues with dependencies. thanks.

Utilize Parameterized SQL Queries to Address DAST Issues

Dear Maintainers,

I hope this message finds you well. I have identified a security concern related to the usage of raw SQL queries in two functions within the package. These queries are flagged as vulnerabilities during Dynamic Application Security Testing (DAST) scans in Android applications.

Affected Functions:

  1. Function: setVersion(int version)
  public void setVersion(int version) {
    execSQL("PRAGMA user_version = " + version);
}
  1. Function: setPageSize(long numBytes)
 public void setPageSize(long numBytes) {
    execSQL("PRAGMA page_size = " + numBytes);
}

Issue Description:
The mentioned functions use raw SQL queries, which can potentially lead to SQL injection vulnerabilities. To enhance the security of the [Package Name] package, I recommend updating the code to utilize parameterized SQL queries instead.

Suggested Resolution:
Refactor the code to use parameterized SQL queries in the affected functions to prevent SQL injection vulnerabilities. This will ensure the package does not pose a risk during DAST scans for Android applications.

Thank you for your attention to this matter. I appreciate your efforts in maintaining the security of the package.

Best Regards,
Harsh Chandravanshi

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.