如何用ORMLite持久化Android LatLng对象?

时间:2014-04-21 16:54:02

标签: android ormlite

我在尝试使用ORMLite在Android上保留以下类时遇到了一些问题:

@DatabaseField
private int id;
@DatabaseField
private String name;
@DatabaseField
private String address;
@DatabaseField
private LatLng location;
@DatabaseField
private float rating;

问题是,位置字段是LatLng,它附带谷歌地图Android库,因此我无法访问它。当我尝试使用ORMLite持久保存此类时,我得到以下异常:

  

java.lang.IllegalArgumentException:ORMLite不知道如何存储   用于字段位置的com.google.android.gms.maps.model.LatLng类。使用   另一个类或自定义持久性

有没有人知道如何在不改变位置类型的情况下解决这个问题?我试图创建一个自定义的持久性,但我不清楚如何使用文档给出的示例正确地执行它。

由于

1 个答案:

答案 0 :(得分:0)

您应该像LatLngEntity一样创建ORMlite实体并存储一个并添加到您的模型实体的引用。第二种方法是在模型实体中单独添加两个字段(lat和lon)。我用过第一种方式