###v1.5 updates
- the list in ManageActivity.java is now swipable (is that a word?). left to turn on/off and right to go to the EditRssFeedActivity.java
- EditRssFeedActivity.java (obviously) enables the editing of RSS feed's information (name, url, category)
- h1, h2 and h3 tags are no more included in the RSS item description field
PS1: swipes on listview items are very tricky. I implemented using the MotionEvent e1.getX(); e1.getY();
in the onFling()
method and going from there to the actual position of the item
PS2: I'm a little bit worried about the depth in activities. MainActivity -> ManageActivity -> EditRssFeedActivity
###v1.4 updates
- ConcurrentModificationException fixed
- invalid RSS URL error fixed
- using SharedPreferences to store and retrieve the update interval
- ExpandableListView remembers last expanded group
###v1.3 updates
- updates using a service
- using expandable listview to group feeds by category
- only mobile phone support, for now
PS: not used classes inside the .legacy package
###v1.15 updates
- checks if new RSS feed's url starts with 'http://' or 'https://'
- html parser no longer displays img, a and strong tags.
- Read More appears instead of complete link.
- manual update button on action bar (doesn't recreate the list)!!! that is meant to be used when new rss feed is added to the main list
This application implements a simple RSS News feed reader. I started with a lot of auto-generated code and step by step I wrote my own code to fit the problem. A simple example is the implementation of list views. I started with auto-generated type and continue coding until I transformed it to one I liked.
This application has been tested on phone not on tablets, so I don't know what really happens when executed on one ;-).
This application was my introduction to the world of Android devices programming.
- Choose news feed and read it.
- Manage the news feeds by choosing which to display.
- Add more news feeds.
- Setting the time interval between updates.
The application consists of several activities:
- The MainActivity draws an expandable list view of RSS feeds and the DetailsActivity draws the RSS items held by the selected RSS feed.
- ManageActivity, NewsFeedActivity, SettingsActivity are simple activities, children of the MainActivity.
- EditRssFeedActivity is a children of ManageActivity and enables the modification of RSS feed's information or their complete deletion.
The application contains two model classes:
- RssFeed.java represents the information of an RSS feed.
- RssItem.java represents the information of a single RSS feed item.
On the background an SQLite database is running with the help of DatabaseHanlder.java
Static content is Helper.java and the communication with the servers is facilitated with the RetrieveFeedTask.java ManageCustomArrayAdapter and ExpCustomListAdapter are classes that customize the listview and the expandable list view in ManageActivity and MainActivity respectively.
A service (UpdateService.java) is implemented to facilitate the update schedule.
- Make it prettier.
- Make main list of feeds redrawn after every update.
- Add more RSS feeds at initialization.
- Implement part of the ManageActivity functionality to MainActivity, particularly the Intent to EditRssFeedActivity.
Romanos Trechlis @r_trechlis