有没有机会在android contentprovider和基于JSON的服务器之间轻松地同步数据(在本例中是联系人)?
我的问题是,android使用游标和东西,另一方面我有JSON格式。第二个问题:同一个值现在有两个不同的名称,所以我需要在两个不同数据源中的值之间进行一种映射。
我的第一个方法是定义一个“用户”类。我将有不同的方法来填充数据和不同的方法来获取数据。问题是,通过这种方法,我必须在每个方法中进行android contentprovider和JSON服务器之间的映射,例如。
AndroidContact->(映射) - >用户-对象 - >(映射) - > JSON格式的
JSON-格式 - >(映射) - > - 用户-对象 - >(映射) - > AndroidContact
正如你所看到的,对于整个沟通,我需要至少进行四次映射,这真是一个痛苦的屁股,因为我正在同步一个联系人可以拥有的所有信息,这是非常多的。 / p>
所以我正在寻找一种聪明的方法来将我的Android联系人与JSON服务器同步,而不是多次定义整个映射内容。
希望我能说清楚,我正在寻找什么。如果没有随意问。
干杯L0rdAli3n
答案 0 :(得分:0)
又过了一天,在网上搜索我问题的预先存在的解决方案(我不想重新发明轮子),我提出了以下解决方案:
我添加了一个MappingContentProvider来保存映射信息,所有那些用数据填充User-Class或从中获取数据的方法现在都可以使用它。
答案 1 :(得分:0)
您可以使用MatrixCursor返回xml或json格式的数据。
MatrixCursor:由对象数组支持的可变游标实现。
final MatrixCursor cursor = new MatrixCursor(SEARCH_COLUMN_NAMES);
for (OpenSearchHandler.Result result : results) {
cursor.addRow(new Object[] { result.id, result.title, result.description, result.url });
}