Android RSS Reader с использованием SimpleXml и Retrofit - медиа: проблема разбора миниатюр

Как разобрать значение media:thumbnail url из RSSItem с помощью simpleXml?

Вот мой класс RSSItem:

 @Root(name = "item", strict = false)
public class FeedItem {
    @Element(name = "pubDate")
    private String pubDate;
    @Element(name = "title")
    private String title;
    @Element(name = "link")
    private String link;
    @Element(name = "description")
    private String description;


    public FeedItem() {
    }


    public FeedItem(String description, String link, String title, String pubDate) {
        this.description = description;
        this.link = link;
        this.title = title;
        this.pubDate = pubDate;
    }

    public String getPubDate() {
        return pubDate;
    }

    public void setPubDate(String pubDate) {
        this.pubDate = pubDate;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getLink() {
        return link;
    }

    public void setLink(String link) {
        this.link = link;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

}

все работает нормально, но мне нужно проанализировать также URL-адрес изображения из xml (media:thumbnail) здесь:

<media:thumbnail url="https://tctechcrunch2011.files.wordpress.com/2016/12/gettyimages-591407481.jpg" />

1 ответ

Вы должны использовать аннотацию @Attribute, чтобы получить это.

В <media:thumbnail ...>, мультимедиа является пространством имен, и вам нужно использовать только миниатюру для доступа к контенту.

Пример:

@Element(name = "thumbnail", required = false)
private Thumbnail thumbnail;

@Root(name = "thumbnail", strict = false)
static class Thumbnail {

    @Attribute(name = "url")
    private String url;
}
Другие вопросы по тегам