首页 > 解决方案 > 房间数据库自定义功能

问题描述

我想从数据库中检索以升序排列的距离间隔中的数据列表,并且我希望它直接来自 sql 查询。我用了这两种方法

(place_address_latitude - :pLatitude)*(place_address_latitude - :pLatitude) + ((place_address_longitude - :pLongitude)*(place_address_longitude - :pLongitude)) AS distance

ABS(place_address_latitude - :pLatitude) + ABS(place_address_longitude - :pLongitude)

但结果并不完全如我所愿。距离计算在sql查询中非常重要,因为结果是DataSource.Factory,因为我使用的是分页库。

有没有办法向 Room 添加自定义函数以使用 Location.distanceBetween (...) 方法计算距离?该方法与 Room 兼容很重要。

标签: androidsqliteandroid-roomandroid-architecture-components

解决方案


推荐阅读