In Arrivo! HD & Express Blog

The official Blog of the In Arrivo Suite

Regular waiting times feed malfunctioning

The feeding service by Roma Servizi per la Mobilità have been found malfunctioning today. Requests by us as well as from other affected developer got no feedback and so we decided to restore the old scraping system to restore part of the functionalities. As of now the waiting times are back functioning; should the problem not be solved by tomorrow, also the directions shall be backtracked. As for the metros there is unfortunately no solution as the only access was through the Apis. The support has recently emerged promising a rapid solution of the problem, and in fact the day after everything returned in order.
Comments

Why In Arrivo will be faster

Waiting for the release by Apple of the new version, I would like to talk a bit about the technologies that allows it to be much faster than the previous versions.

New Apis


The first one, already introduced in the 7.0 version, takes advantage of the new apis provided by Agenzia Roma Servizi per la Mobilità to offer waiting time and transit routes without the need to download and scrape complex html pages as done previously both by In Arrivo and the competing apps. In order to do it a set of Python scripts have been developed according to the suggestions by the provider to offer services to the legacy PHP scripts exporting the information to the apps.

Apple turn-by-turn


The latter breakthrough was due to the introduction on the part of Apple of a new MKDirection library. This allows to find path directly from inside the app without the need of contacting the Google services by means of remote scripts. This allows a much quicker feedback and freedom for possible limitations on the part of Google.

IOS 6.1 support


Finally this result was attained by means of a twist. Basically Apple has silently introduced CALayers in its views and executes a callback to layoutSublayersOfLayer on specific views like the stops. Strangely this call happens even when executing the code on a iOS 6.1 device while the function in the MKAnnotationView is missing with the result the app crashes. The solution was to conditionally provide that in the case of iOS 6.1 does nothing but at least does not crash the app.
Unfortunately the previous technology is not available for iOS 6.1 and no backward compatibility is foreseen. Consequently paths no longer appear on older devices without anyway impairing in any way the correct working of the app.

Comments

Google got nasty with developers

We have to report Google got apparently nasty with users taking advantage of their geocoding services. Consequently most path drawings in the apps got affected. We are moving the support to Bing and, where possible, get the information from the new bus information back office to try and ease the problem.
Comments
Subscribe to the In Arrivo suite RSS feed