我有一个Java应用程序,以一种奇怪的格式存储一些GPS数据:
(纬度,经度,workerId)使用此类:
public class Coordinate {
private final double lon;
private final double lat;
private final int workerId;
public Coordinate(double lat, double lon, int workerId) {
this.lat = lat;
this.lon = lon;
this.workerId=workerId;
}
public double getLon() {
return lon;
}
public double getLat() {
return lat;
}
public int getwId(){
return workerId;
}
}
问题是,每当我有一个(经度,纬度)时,都必须向该对添加一个workerId(这是一个整数)。
现在这是我的问题:
我正在将这种格式的数据发送到不熟悉此格式的android应用中。
您是否有任何机会知道我是否有可能在整个应用的android端从这种格式恢复我的经度和纬度?
我有以这种形式发送数据的理由:)
如果我在android应用程序中构建了一个类似此类的类,用于包装数据...。我可以返回y原始数据吗?
更新:
我的第一个应用程序是在Java中,它是一台服务器,用于侦听到特定端口的传入连接。
我的第二个应用程序是在android上,它是一种客户端。
这两个通过套接字进行通信。。。所以没有磁盘写入。
第一个在本地计算机上,第二个在移动电话上。
是的,我是从上面通过套接字和类的实例发送的!
就像是:
Coordinate coord=new Coordinate(lat,long,id);
os.println(coord);
如何将我的数据恢复到android应用上?
最佳答案
我猜您的应用程序正在发送您显示的类的实例?如果是这样,为什么不给您的Android应用提供类文件,以便您可以重新创建对象并从中读取呢?
如果要在同一设备上的两个Android应用程序之间共享内容,请使用ContentProvider。
您不能只发送对象的实例并在另一端接收它。该对象必须已序列化和未序列化(在接收方)。因此,Java具有ObjectOutputStream-和ObjectInputStream-类。