【问题标题】:Does Android platform support SpatiaLite? [closed]Android 平台是否支持 SpatiaLite? [关闭]
【发布时间】:2010-04-22 18:39:47
【问题描述】:

是否可以在 Android 平台 (1.6) 上使用 SpatiaLite 数据库?我正在尝试编写一个类似于 google 嗡嗡声的应用程序,该应用程序需要利用 SpatiaLite 功能,例如计算 2 点之间的距离等。需要任何外部库吗?谢谢。

【问题讨论】:

  • 我从未使用过 SpatiaLite,所以我可能会问一个愚蠢的问题,但为什么基于位置的内置类还不够?
  • 这也是一个解决方案。我只是认为使用空间数据库可能会有更好的方法。所以距离信息可以提前计算或索引。但我不知道它是如何工作的。

标签: android sqlite geospatial


【解决方案1】:

Android 版 Spatialite:https://github.com/sevar83/android-spatialite (免责声明:我是回购的所有者)

另一种实现 http://code.google.com/p/spatialite-android/

教程: https://www.gaia-gis.it/fossil/libspatialite/wiki?name=spatialite-android-tutorial

但我怀疑它是否支持这种过时的版本(1.6)。

【讨论】:

  • 您好@WindRider,我已经从github.com/sevar83/android-spatialite 实现了您的代码,并将其集成为Spatialite DD,但未将DB 创建为SpatialDb。 fun specialQuery() { var count = 1.123456 val selectQuery = "SELECT ST_Distance(ST_GeomFromText('POINT(92.24909721 24.63542998)'),ST_GeomFromText('POINT(91.53909721 23.98742998)')) as cnt;" val db: SQLiteDatabase = this.readableDatabase val cursor: Cursor = db.rawQuery(selectQuery, null) count = cursor.getInt(cursor.getColumnIndex("cnt")).toDouble() }
【解决方案2】:

我的猜测是有人必须编译 spatialite 才能在 android linux 版本上工作。然后你必须通过电话获得它。我对这个问题投了赞成票,因为我很想看到它发生。

【讨论】:

    猜你喜欢
    • 2014-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-14
    • 2012-01-22
    相关资源
    最近更新 更多