High performance smartphone devices have become an affordable commodity, thus a steadily growing user base characterizes the market as of today. With their advanced capabilities, which are becoming comparable to that of desktop devices', they provide new opportunities for programmers to come up with new solutions to old problems, and to develop new techniques capable of overcoming some unsolvable ones as well. One such problem is the issue of tracking the movement of public transportation vehicles without heavy infrastructure investments, and predicting the vehicles’ positions in a real-time fashion.
Few cities can afford such an expenditure, as the placement of high quality sensors, required to provide this specific service, is far from being cheap. Not to mention that for keeping such a system in operational order, regular maintenance cannot be avoided thus increasing the expenses.
On the other hand, the aforementioned sensors - with varying quality - are already out there, built into the high performance hand-held devices of the people roaming our cities. Should an application be present which was capable of harvesting this dormant potential, an economic solution could be found.
I have been working with a team, which based on this idea, created a prototype application, to cope with this problem. Along the way new difficulties emerged, including the 'economic' collection of data. This work is dedicated to solving this matter, through implementing a subsystem on the Android platform, which is capable of collecting data utilizing the built-in sensors of modern smarthphone devices, preprocessing it, and extracting information from it, indicating the movement state of the individual using it, which later can be used to help reduce the amount of data being transmitted through the mobile-net connection.
While performing this task, I thoroughly paid attention to create and keep a modular structure through which the integration and extension of this subsystem can be achieved easily, while keeping the complete functionality of the already implemented system developed by my colleagues and myself intact.