J2ME (Java ME) Mobile (Cell Phone) RSS Reader

Source Project Download

Table of Contents


The free RSS feed reader / agregator is a cell phone (mobile) J2ME MIDP application that is able to read most RSS/Atom 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. This uses the internet which service providers charge extra for, so you would best get an unlimited data from your service provider. This is licensed under GPL. The program can be built and run using either Free and Open Software (FOS) or proprietary compilers and J2ME. Source code originally authored by Tommi Laukkanen is at Modified GPL software from other projects are also used.

Application Features:

Which program to choose

These instructions are for 1.11.1 Release Candidate 2 and later. If you want to start quickly, you can choose the program that should work for most phones, midp20_RSSReader.jar. This allows you to have the device browser go to the link if requested. All but one of the versions of the program allow this. Otherwise, read what follows. Java ME (J2ME) has a flaw in that many features are optional. The problem occurs in that if a program uses an feature that is not present on the phone, then trying to run that program may not give an error, but the program will not run as it requires an feature not present on the phone. This can be frustrating for a user as it will appear that the program does not work when in fact is the phone that is not giving a proper error message. Sometimes a short error message is given such as invalid jar file when in fact the jar is valid, but not for the phone that one is attempting to be installed. For example, say a program has 2 versions. One which can read the phone's memory and one that cannot. The ability to read the phone's memory is called JSR-75. If you run a program with JSR-75 on a phone that does not have that feature, it may not come up and may not give an error message. So, in this case one needs to pick the phone version that does not read from phone memory.

So, it is important to see which features the phone has and install the program that uses those same features. The features that are important to know are CLDC-1.0, CLDC-1.1, MIDP-1.0 or MIDP-2.0, and JSR-75. To find the features go to Find your phone and go to it's web page. Or you can find this out by looking at technical specs for your phone, Look for CLDC version. It may have 1 or 2 numbers 1.0 and/or 1.1. Use the higher number this gives CLDC-1.1. If this is the CLDC version, use a program which has cldc11 (e.g. midp20_cldc11_RSSReader.jar) If CLDC version 1.0, use program without cldc11 (e.g. midp20_RSSReader.jar). Look for MIDP version. It may have 1 or 2 numbers 1.0 and/or 2.0. Use the the higher number this gives MIDP-2.0. If this is the MIDP version, use a program which has midp20 (e.g. midp20_cldc11_RSSReader.jar) If version 1.0, use program without midp10 (e.g. midp10_RSSReader.jar). Look for the Specific JSR. If it has JSR-75, choose the program with jsr75 (e.g. midp20_jsr75_RSSReader). If it does not have JSR-75, choose the program without jsr75 (e.g. midp20_RSSReader).

If your phone is not listed on the link above, you can run the midp10_RSSReader.jar and go to settings. Near the bottom it will say phone MIDP. Take that number or numbers there and use it as above for picking the MIDP version program to install. After phone MIDP, it has phone CLDC. Take that number or numbers there and use it as above for picking the CLDC version program to install. After phone CLDC, it has phone jsr75. If that has true, the phone has JSR-75. Use it as above for the JSR-75 version program to install.

Install/copy Mobile RSS Reader to phone instructions

To install/copy RSSReader to the phone, you will need some communication method between your computer and your phone to be working (e-mail, cable, bluetooth, or infrared), and copy the midp10_RSSReader.jar, midp20_RSSReader.jar, midp20_cldc11_RSSReader.jar, midp20_jsr75_RSSReader.jar, midp20_cldc11_jsr75_RSSReader.jar, file (that is in the zip file (this link)) from the computer to the phone. If you have an old phone (that uses MIDP 1.0), copy midp10_RSSReader.jar. The detailed steps are different from one phone to other, so please read the manual of your phone and the help of your communication program.

Alternatively, you can use your phone browser to download RSSReader directly from this web.

Just enter this url for MIDP-2.0 and CLDC-1.0 (see above):

Just enter this url for MIDP-2.0, CLDC-1.0 and JSR-75 (see above):

If your phone is old (has MIDP-1.0), use this url:

Detailed Features

Reading from phone memory

Feeds and imports of feeds can be done from phone memory with phones with JSR-75. To see if your phone supports JSR-75 see Which program to install.

Importing Feeds

The import feature has filters. This is because there are some OPML files that have 1,500 (SIC) links or HTML files with lots of links. This would cause the program to run out of memory or to be unmanageble. Say you only want the ones that are about Tech. Use the name filter with 'Tech' in it to get just the ones with Tech. Some sites have an HTML file (URL) with links to RSS. You can use the HTML Links format to import from this file. This file will likely have both links for RSS and other links. Usually, the RSS links have a pattern in them like rss or xml. Put rss or xml in the link filter to just import these. You will need to open the page with view source and see what to use as the filter.


Main feeds(headers)

Feed items no marks

Feed items (marked)


Unread items


Build instructions

All builds

You need to install the software (needed for build only)

To build using antenna, go to wtkbuild directory, copy the files ending in .template to the file name without '.template'. In, change antenna.home value to point to directory of the antenna jar. Set antenna.jar to the name of the antenna jar. Change antcontrib.home to point to location of ant-contrib-1.0b3.jar. In file for linux, change value wtk.home to "<PHONEME_INSTALL_DIR>/bin/linux_x86_fb_chameleon_mvm". Comment out value for linux. In file for windows, change value wtk.home to "<PHONEME_INSTALL_DIR>/bin/win32_x86_javacall_mv". Set value to localtion of Tools subdirectory under Websphere Micro Edition (WME) install directory. If you do not have WME, comment out in out. The following is for linux and windows. Copy files under i386 to bin with -rp. Uncomment property wtk.midpapi with value "${wtk.home}/classes".

To compile and build everything,

export ANT_HOME=(location of ant)
export JAVA_HOME=(one directory above location of java)
export JAVACMD=(location of java)
export PATH=$PATH:$ANT_HOME/bin
ant -f wtk-build.xml dist

Run instructions

The program can be run on J2ME implementations, some GPL phone ME, or on java emulators MicroEmulator (LGPL) and kobject's (me4se) [GPL].