RSS Reader MIDlet

Platform: J2ME MIDP 1.0

Description:

The free RSS feed reader is a cell phone (mobile) J2ME/PhoneME MIDP application that is able to read most RSS servers/feed versions. RSS is a lightweight XML format designed for sharing headlines and other content like blogs and news. Data is stored on the device and updated on request. Read Wiki documentation for more details on which program to use.Add RSS feed bookmarks.  The program can be compiled/built/run entirely with either proprietary or FOSS (Free and Open Source Software).  Features include

  • Parse RSS feeds
  • Browse RSS feed headers
  • Read topics
  • Read all unread/read topics
  • Supports ISO8859_1, windows-1252, UTF-8 , and UTF-16
  • Update all/updated feeds with single command
  • Open item link or enclosure in device browser (On supported devices)
  • Save on exit or request
  • Import and synchronize RSS feed lists from internet or phone memory
  1. OPML
  2. HTML hyperlinks
  3. Line by line
  4. HTML Auto links
  5. HTML OPML auto links

RSS Reader MIDlet with Nokia N80

Midlet is designed to run on J2ME MIDP 1.0 devices so it will work also on older devices. The downloadable package includes binary files along with source code and NetBeans IDE 5.5 project files.

rss-reader-import.png RSS Reader

RSS Reader RSS Reader

Download binaries and source code

Older binaries for BlackBerry:

http://www.substanceofcode.com/downloads/midlets/rim/RSSReader.jad
http://www.substanceofcode.com/downloads/midlets/rim/RSSReader.cod

Contributors:

  • Irving Bunton

Version history:

Version 1.5 – July 24th 2007

  • Open link in device browser
  • Support long feed URLs

Version 1.4 – December 20th 2006

  • ATOM support

Version 1.3 – December 3rd 2006

  • Sync feeds from OPML list
  • Save feed items when application is closed
  • Update all feeds with one command
  • Improved text rendering (HTML tags are removed)
  • Improved feed support

Version 1.2 – September 14th 2006

  • Added a support for importing RSS feed lists using the line-by-line or OPML format

Version 1.1 – April 13th 2006

  • Added a support for basic username and password authentication (eg. htaccess)
  • Fixed the item title when item is changed
  • Removed titles from the item screen to make it more simple

Version 1.0 – April 26th 2005

  • First public release

  • http://rabie.net Rabiek

    Hi,
    I wonder if there is a release for rss reader as a marquee on the top of the mobile like a horizontal scrolling of the rss headlines ?

    Great Job

    Rabie

  • Irving

    Hi Rabiek,

    So, to be clear, sort of like a ticker at the top of the headers, in sequential order? Should this also be on “River of News” as well (as it shares the same code)?

    Best Regards,

    Irving

  • uk

    i created a rss reader in netbeans 6.5 and it is working properly using emulator of netbeans.when i deployed it in mobiles like sony ericson and motorola..it is unable to connect to internet via gprs to parse feeds..should i add any extra properties to the jar or jad file

  • Irving

    Hi uk,

    Have you looked what internet profile is specified for Java programs? I had to set something like this with some of my Sony Ericsson phones. Also, I’m having some trouble with some of the really old Sony Ericssons (e.g. T637) where I’m not able to connect with Java programs at all.

    Best Regards,

    Irving

  • OMP

    Hi

    As the app is J2ME; will it be able to parse Media Rss?

    http://en.wikipedia.org/wiki/Media_RSS

    regards

  • Irving

    Hi OMP,

    It is possible to parse this. Currently, the reader recognizes 2 name spaces. Dublin Core and Itunes. The versions of the program that display itunes info are in the binary zip and have ‘podcast’ in the name. Also, the itunes is enabled on the settings form. Given the larger memory used, I don’t advertise this. One of the media elements is similar to an Itunes one in that rating is similar to explicit. The media:text could be used if description is not present. I could also use the media:content and place them in enclosure field separated by a character that would allow me to show multiple links for the content. Is this what you had in mind? To summerise, use media:text for description if description not present. media:rating for explicit (means changing explicit to fit rating). Storing multiple media:content in enclosure after the enclosure if present.

    Regards,

    Irving

  • OMP

    Hi Irving

    Thanks ofr the response once again. As you mentioned; it will require larger memory; though the use of the Media RSS feeds will be specifically for phones that have the requisite memory.

    Your suggested changes to the code are quite simple and very practical; though with the Media Rss feeds employing images and video, would we have issues regarding the resizing of the images again?

    Regards

  • OMP

    Irving/Tommi

    I have been looking at the Media Rss as an alternative to the image resize issue we discussed previously.

    As the Media Rss feed accommodates for thumbnails; which in turn means that the image will already have been resized to fit smaller the dimensions, we would not have to bee too concerned about the size or dimension.

    I have also noticed that many sites that previously employed RSS feeds are now making use of this thumbnail tag; though the changes made to their current feed is minimal; i.e.

    http://www.tomstocky.com/blog/adding-mediarss-to-atom

    as an example.

    In a case like this; is it possible to amend the current RssFormatParser class to include the parsing of only the thumbnail tag; as explained in the article in the attached link. Hereby, reducing the amount of rework as well as resolving the issue regarding the display of images.

    The issue of the image format might still be a cause for concern; though I have encountered a few feeds that make use of the PNG format over JPG. Thus only the thumbnail will be downloaded and if the user still requires the actual image; the link and enclosure will be there for that.

    Regards

  • enzo

    Hi.

    I am getting a Sony w995 phone which has WiFi.

    I wanted to know if this program can run in the background, and when I am in a Wifi spot automatically download my RSS feeds and articles, and save them to flash memory for reading later?

    Thanks.

    This feature would be great! Please implement it!

  • Irving

    Hi,

    The program can run in the background, but it does not automatically download feeds in the background. I will consider it, but it may take a while as now I’m busy on other projects. I’m not sure if it could tell if it was in a WiFi spot or not as opposed to GPRS/EDGE/3G. Otherwise, it could load feeds in the background when I have time to do it.

    Regards,

    Irving

  • Wsl

    Hello ,
    I am impressed , program is very nice .
    I have one question to You , because I am writting similar application when it comes to RSS and I am wondering how did You save data in your mobile. When I close Your app and start it again the feeds which I downloaded firstly are still there.
    So I assume that You write it to mobile phone memory.
    I’ve used RMS but I can’t see the solution in it for RssFeeds and Images.
    How did You saved data to mobile phone ?

    I think that it is connected with JSR-75 but haven’t used it before.
    I would be grateful for any help :)
    Cheers

  • Irving

    Hi Wsl,

    We use the RMS to save the feeds. What the rss reader does is to write a serialize method for the feeds which is getStoreString which serializes by separating the parts of the feed by non-printing character such as (char)5 to form a single string. Then, getBytes(“UTF-8″) in Settings to create a byte array with length followed by bytes. This is written to RMS. To restore the feeds there is a deserializer which creates the feeds again. For rss reader there is a constructor which takes the stored string and creates a rss feed from it.

    On the other hand, JSR-75 has a problem in that it is not available on most phones and writing to memory has problems in that on some phones (my N80ie, N95, and N85 and the Sun WTK emulator), the user is prompted if it is OK to write to phone memory. This is done endlessly so that it is impossible to complete the write. The read of memory using JSR-75 is not like that so, you can read from memory with a few prompts depending on how many subdirectories that you go.

  • Irving

    Hi Wsl,

    I have read some great articles on code signing. For most carriers you have sign the code to write to the file system. This can be expensive. Also, some do not allow it at all. So, writing with JSR-75 is not practical. Also, reading is prohibited on many locked phones. This link talks about the difficulties with US carriers http://www.nextgenmoco.com/2008/01/so-you-want-to-deploy-j2me-app-in-us.html

    Regards,

    Irving

  • Irving

    Release Candidate 1 for version 1.11.3 released. This primarily has fix for Big5 and other encodings, but only Big5 is tested.

  • Irving

    Stable 1.11.3 released. I’m working on a development release now.

  • http://www.tweaksource.com tweaksource

    Tommi,

    I have been looking for a good, free rss reader for my E71 for a while now. Thanks for sharing your work.

    I am also a programming student and Java is one of the languages I’m learning.

    I do have an issue though. I can import and open and read and save. Everything works fine. However, when I close the app and reopen it there is no data.

    Is this because the S60V3 won’t let the java app write to the file system?

    Any clues?

  • http://www.tweaksource.com tweaksource

    Actually, after uninstalling and reinstalling several times I see a common thread.

    If I try to add a feed with an invalid url I get an error, obviously. When I then try to save or exit the appliciation it hangs. If I shut it down, it then has no data. Also, shutting the app down while it is saving or updating causes it to no longer save data.

    Reinstalling the app is the only way I have found to get it to work again.

    Importing feeds from a good list seems to work well, but if I try to manually add a feed and have a typo it dumps everything.

    It’s working very well for me now. Thanks again for sharing.

  • Irving

    Hi tweaksource,

    Thanks for the update. It really helps to have a good analysis of the problem by the users like you. I’m working on 1.11.4 which has a fix for errors during import of OPML which hangs. I’ll try to put out a dev or beta release and then look at your problem when adding individual feeds. I’ve been doing the updates for the last 2+ years as Tommi has been developing other apps. I am an official contributor.

    Irving

  • Irving

    Hi,

    I have released version 1.11.5 Release Candidate 1.

    Irving

  • prv

    Hi,

    I have been using this on my Nokia 5800 Express Music.

    I want to have an option to export the feeds to an opml file so I can import when there is a crash.

    Thanks

    • Irving

      Hi prv,

      I’ve tried to do this with the “smartphone” version, however, J2ME, the language used by the program, gives endless prompts for permission to write to the file system. I’ve thought about having a text box where you can copy/paste the output OPML and use your own editor to save (the text would already be formatted so that no modification would be needed). There is save without exit which saves the current data while allowing you to continue to use the program without having to exit and come back in again.

      Also, these crashes that you talk about. Is the rss reader app crashing, your phone crashing?

      Regards,

      Irving (Current contributor)

    • Irving

      Hi Prv,

      I need to investigate exporting to the file system more. I have been able to export using a signed program on my Nokia N86. I will have to see if it can work for more than one feed and if it really requires a signed program. The Nokia N86 could allow a per session prompt for writing to the file system.

      Regards,

      Irving (Current contributor)

  • Ibuntonjr

    I have published version 1.11.5 Development 14. The smartphone version can export feeds if JSR-75 is supported on the phone/carrier. There are signed versions at a special URL because to download a signed version, you must install the JAD file, not the jar file. The signed jad and jar files must be direct links or it will not install. The files are signed by the Yinlight, LLC which must be listed as the vendor for the signing to work as the signing certificates were purchased by Yinlight, LLC. The signed versions are at http://mobile-rss-reader.yinlight.net/downloads/Version%201.11.5%20DEV14%20Source%20and%20Binaries/. It is best to first use Verisign signed JAD, then Thawte (unless you already know which certificates that you have). The Godaddy signed file is to be used for the MicroEmulator applet only as that code certificate is valid only on Mac/PC/Linux. The Godaddy code signing is not the same as the Godaddy SSL certificate which is present on the phone. The phone will only access Godaddy SSL sites, not Godaddy signed code. The RIM signed code may only be installable by taking the rim..zip file, unziping it on your PC/Mac and installing from the PC/Mac. This is untested as this is a development version. Some locked phones e.g. AT&T Pantek P7000 will not install JAD files. Thus, these cannot install signed files as installing a signed jar is treated as untrusted. I am investigating putting the programs in the AT&T market to rectify this problem. This may be too costly to implement.

    Regards,

    Irving (Current Active Contributor since Tommi became inactive in mid 2007 to actively contribute to other projects)