在android中解析Picasa API JSON提要
嗨,我正在尝试实现一个简单的应用程序,在android中显示picasa照片 经过多次试用,现在我使用GoogleJavaAPI客户端(不是Gdata客户端)获取Picasa提要 在我的程序中,提要中JSON的第一层字段(例如下面代码中的在android中解析Picasa API JSON提要,android,json,google-api-java-client,picasa,Android,Json,Google Api Java Client,Picasa,嗨,我正在尝试实现一个简单的应用程序,在android中显示picasa照片 经过多次试用,现在我使用GoogleJavaAPI客户端(不是Gdata客户端)获取Picasa提要 在我的程序中,提要中JSON的第一层字段(例如下面代码中的version和encoding)可以成功映射,因此提要和连接没有问题 但是,我无法将第二层字段映射到对象中 我使用albumFeed=response.parseAs(albumFeed.class) 它将调用解析器 从官方样本中,我得到了这个AlbumFee
version
和encoding
)可以成功映射,因此提要和连接没有问题
但是,我无法将第二层字段映射到对象中
我使用albumFeed=response.parseAs(albumFeed.class)代码>
它将调用解析器
从官方样本中,我得到了这个AlbumFeed.java
public class AlbumFeed {
// cannot be List
@Key
List<AlbumEntry> feed;
@Key
String version;
@Key
String encoding;
}
}
其中AlbumEntry.java类似于
我正在使用xmlns测试行为)
JSON提要本身类似于:
{"version":"1.0","encoding":"UTF-8",
"feed":{"xmlns":"http://www.w3.org/2005/Atom","xmlns$gphoto":"http://schemas.google.com/photos/2007,……}}
愚蠢的我。这与android/PicasaAPI上下文无关
在阅读了更多关于GSON文档之后,根据json,对象{}将是一个映射,而不是一个数组。数组可以映射到列表,而映射可以映射到对象或映射
我改为简单
@Key
白蛋白输入饲料代码>
在AlbumFeed.java中
它开始工作了
这里有一个关于GSON的很好的参考资料
public class AlbumEntry extends Entry {
@Key("xmlns")
public String xmlns;
}
{"version":"1.0","encoding":"UTF-8",
"feed":{"xmlns":"http://www.w3.org/2005/Atom","xmlns$gphoto":"http://schemas.google.com/photos/2007,……}}