我正在尝试计算存储在SQLite数据库中的第一个GPS点与存储的最后一个GP点之间的距离。
到目前为止,我的代码是:
private double Distance()
{
SQLiteDatabase db1 = waypoints.getWritableDatabase();
Cursor cursor = db1.query(TABLE_NAME, FROM, null, null, null, null,ORDER_BY);
Cursor cursor1 = db1.query(TABLE_NAME, FROM, null, null, null, null,ORDER_BY);
Double lat = cursor.getDouble(2);
Double lon = cursor.getDouble(1);
cursor.moveToFirst();
cursor.moveToLast();
cursor.close();
distance = cursor.distanceTo(cursor1);
}
我意识到我需要返回一个值,但我收到的错误是distanceTo
方法:
“方法distanceTo(Cursor)未定义类型Cursor
答案 0 :(得分:3)
正如错误消息所示,方法distanceTo()
在类型Cursor上不存在:https://developer.android.com/reference/android/database/Cursor.html
方法类可以使用方法distanceTo(Location)
:
https://developer.android.com/reference/android/location/Location.html
在尝试拨打distanceTo()
之前,您需要在数据库中根据经度/纬度值创建位置对象。