Resolving difficult issues
For some time I’ve been copping flack from people who’ve installed unsupported custom ICS ROMs on their Android devices, because sometimes the touch screen stopped working with my apps, Solar Explorer and Exoplanet Explorer, resulting in misleading comments on Android Market such as “ICS fail” which are not true as the problem only started after the unofficial ICS ROM was installed.
Despite this, I’ve done everything I can to figure out what’s wrong, but I cannot fix issues in a custom ROM, without becoming a developer on every custom ROM project, which I don’t have time for. There is the possibility of working around the problem in code, but it has to be done in the Shiva runtime engine.
Shiva is the 3rd party tool, developed by Stonetrip, that I use to write my apps. It handles all the low level code for graphics acceleration, audio, etc., and deals with a lot of the “fragmentation” issues. Because the issues have only affected custom ROM users, Stonetrip hasn’t investigated because they don’t support custom ROMs.
To be honest, I can’t blame Stonetrip. There’s loads of different custom ROMs out there with a constant barrage of patches and hacks being released to get them running on many different devices with varying levels of success. It would be impossible for a company to be able to provide support for all these projects, ones that often feature little in the way of quality control because the ROM developers themselves have few resources.
Although my apps work fine on all the ICS test devices I have access to (running official manufacturer ROMs), in the last week or so I’ve started to receive reports from Sony phone owners of a touchscreen problem present in the official ICS 4.0.4 that was released earlier this month.
Thanks to a couple of users who’ve given me the log output from their devices while running my apps, I’ve been able to report the problem to Stonetrip, and after looking into it, they think they know a way of solving it.
The plan is that they will release a new Shiva runtime engine in the next couple of weeks, after which I’ll rebuild all my apps a do a new release on Android, and Playbook, although RIM devices aren’t affected by the problem.
At the very least it will most likely fix the issue on Sony devices, and with luck it’s the same problem that is affecting custom ROM users, and it’ll be fixed too.
The next update of Solar Explorer will also includes a couple of new features that I’ve been working on. In the current version of the app, although the planets are positioned accurately based on the date, the Moon isn’t. The new release will fix that and you’ll be able to see the Moon in the right location on dates that feature a Solar eclipse. There’s also been some improvements made to the planet position calculations so they will be more accurate.
In the meantime, work continues on my Rockets app, but at a slower pace because I’ve got a full workload at the office for the next few weeks. I have however completed the Saturn V since my last update, which was a lot of work, and by far the most complex to date. As usual, the payload is included, which in this case is a model of the Apollo 11 Lunar Lander with it’s landing legs folded up, inside the final stage, below the Command Module.