Best way to notify users of an update for a non-market app?

I'm making a simple bus timetable app for my workplace and people are interested, but I don't want to be mass emailing everyone for simple updates. Right now I'm looking at having an XML file with the latest version info and parsing it on startup then just showing an alertdialog to update but, I can't get my head around getting SAX to work, I might look at the DOM parser but both seem like an overly complicated way to get a single value.

Literally, this is all the XML contains:

<newversion>1.2</newversion>

Is there another way?

Thanks.

Answers


You really don't need to do this. You can simply have a text file placed on a server, even a free hosting one will do. Update the file's content to the version number whenever you update your app. Everytime your app starts, it can read the contents of the file. Since it will only contain the version number, you can directly compare it with your app's current version. If the current version number is less than the one in the file, give the users an update notification. Here is the basic code to get the contents of the file:

        InputStream is = new URL("http://<my_server>/version.txt").openStream();
        BufferedReader in = new BufferedReader(new InputStreamReader(is));
        String serverVersion = in.readLine();
        in.close();
        if (serverVersion.isEmpty())
        {
            //couldn't get the file. Do some error management here.
        }

How about using JSON instead? Parsing it is dead easy, much simpler (IMHO) than parsing xml, if you have problems with that.

Or you just use a simple string for this data, since it's unstructured.


Need Your Help

Unable to Activate Excel Window

c# asp.net office-interop

The Excel Window stays minimized. How can I bring this to the front of the browser.

Sorting funcationality Optimization using MySQL and Java

java mysql performance sorting large-data

I am going to generate simple CSV file report in Java using Hibernate and MySQL.