2017-02-05 15 views
0

Android用のニュースリーダーを作成しようとしていますが、各RSSアイテムからサムネイルを解析する方法を見つけることができません。私はサムネイルのすべてのURLを捨てて、それらを使用するために保存する必要がありますか、または私はちょうどURLでそれらを使用できますか?これは、フィードAndroid RSS解析:画像を取得サムネイル

public class RssFeed implements Parcelable {` 

    private String title; 
    private String link; 
    private String description; 
    private String language; 
    private ArrayList<RssItem> rssItems; 

    public RssFeed() { 
     rssItems = new ArrayList<RssItem>(); 
    } 

    public RssFeed(Parcel source) { 

     Bundle data = source.readBundle(); 
     title = data.getString("title"); 
     link = data.getString("link"); 
     description = data.getString("description"); 
     language = data.getString("language"); 
     rssItems = data.getParcelableArrayList("rssItems"); 

    } 

    @Override 
    public void writeToParcel(Parcel dest, int flags) { 

     Bundle data = new Bundle(); 
     data.putString("title", title); 
     data.putString("link", link); 
     data.putString("description", description); 
     data.putString("language", language); 
     data.putParcelableArrayList("rssItems", rssItems); 
     dest.writeBundle(data); 
    } 

    public static final Parcelable.Creator<RssFeed> CREATOR = new Parcelable.Creator<RssFeed>() { 
     public RssFeed createFromParcel(Parcel data) { 
      return new RssFeed(data); 
     } 
     public RssFeed[] newArray(int size) { 
      return new RssFeed[size]; 
     } 
    }; 

ためのコードであり、これはRSSリーダーである:(Iはまた、値を格納するオブジェクトを作成RssItem)。

public class RssReader { 

    public static RssFeed read(URL url) throws SAXException, IOException { 

     return read(url.openStream()); 

    } 

    public static RssFeed read(InputStream stream) throws SAXException, IOException { 

     try { 

      SAXParserFactory factory = SAXParserFactory.newInstance(); 
      SAXParser parser = factory.newSAXParser(); 
      XMLReader reader = parser.getXMLReader(); 
      RssHandler handler = new RssHandler(); 
      InputSource input = new InputSource(stream); 

      reader.setContentHandler(handler); 
      reader.parse(input); 

      return handler.getResult(); 

     } catch (ParserConfigurationException e) { 
      throw new SAXException(); 
     } 

    } 

    public static RssFeed read(String source) throws SAXException, IOException { 
     return read(new ByteArrayInputStream(source.getBytes())); 
    } 

} 

答えて

0

URLを解析することはどういう意味ですか。私はサムネイルのURL全体を持っていると思います。

サムネイルのURLがある場合は、PicassoGlideのような画像のダウンロードとキャッシュライブラリを使用できます。 Androidで画像を操作したい場合は、使いやすく、重宝します。

私はPicassoを使用しましたが、広告として扱われています。しかし、私は開発者サークルで私が聞いたことのためにGlideにも試してみたいと思っています。

注:同じことをお手伝いすることができる他のライブラリがあるかもしれません。おそらくそこにあるものを見て、あなたのために何ができるのでしょうか?

これが役に立ちます。ハッピーコーディング!

+0

ありがとう、私の問題は、私はURLを取得する方法を知らないということです! –

+0

URLはRssItemモデルの一部でなければなりません。 RssItemオブジェクトのArrayListを取得するので、そこから簡単に使用できます。おそらくもっと説明しても意味がないのであれば、もっとコードを見る必要があります。 –

関連する問題