rosjava / android_apps

Applications built on top of the rosjava android libraries.
133 stars 112 forks source link

How to manage multiple app versions? #22

Open bit-pirate opened 11 years ago

bit-pirate commented 11 years ago

These Android apps here have been around for a while now and we got to a point where we need to start thinking about how to handle different versions of the same app in order to support multiple versions of ROS.

Currently we use Google Play and unfortunately it doesn't allow publishing of multiple versions of the same app (i.e. package name), unless it has to do with hardware requirements (It offers a fix amount of filters; look here for details: Android Developers).

So for now we probably have no other option then publishing multiple versions of the same app as different apps, e.g. Android Teleop Groovy, Android Teleop Hydro. For the package name - that's the important part - this answer from StackOverflow recommends to just append the version name to the existing package name, e.g. com.github.ros_java.android_apps.teleop.groovy.

Anyone knows a better solution than the above?

stonier commented 11 years ago

I think just giving them a numbered version in the name might work better than fixing them to a distro, e.g. "MapManager 2".

Pro: we don't have to rebuild them every distro if nothing has changed.

Con: the name of the app isn't as meaningful, but users don't install the apps directly so often anyway, usually its via the remocon.

corot commented 10 years ago

Well, by now we append the ROS distro in brackets at the end of the app name. The package name is not a problem between groovy and hydro because all paths have changed to include repo home (not clean at all... this solves the problem just by chance!).

As Indigo is far in the future, this is a not very bad solution by now. Let's postpone the definitive politics for Indigo. We will probably drop groovy apps, and only maintain current and current - 1.

I keep this open as a reminder that it's not a fully satisfactory solution... if someone has a better one, please!