This thesis shows how the context aware data-accessing application in a hybrid mobile and desktop environment got implemented as a system consisting of a database, a server and a client module. The client software is able to download specific information associated with the collected MAC addresses of nearby Bluetooth-enabled devices or with an ID stored in a QR-code, and to present these information to the user. The server relies on the database and it also provides an administrator interface to manage the stored data.
The main part of the thesis is about the design and development process of the client software (built with the Android API and targeted to the Android OS), the PostgreSQL database and the Java servlet (with a GWT based user interface, running in a Tomcat servlet container). The architecture of these modules, as well as both the two (the Bluetooth-connection based and the web-based) ways of client-server communication and the detailed methods of extracting the IDs from QR-codes and collecting MAC addresses from nearby Bluetooth-enabled devices, are also presented here.
In the development process' introduction special attention was given to the comparison between the final setup of the system and its state at the process' milestone, halfway in into the implementing session.
These are led by a brief listing of SDKs (JDK, Android, GWT), IDEs (NetBeans, Eclipse), APIs (Hibernate, BlueCove, ZXing) and other tools (Apache HTTP Server Project, PHP, Apache Tomcat, Apache Maven) used in this project.
The writing ends with observations made throughout developing: critical comments about the technologies used (like how well-documented Android and GWT are, bugs in BlueCove, or, earlier on, the special needs of working with Hibernate) and a showdown of the the created system's shortcomings (mainly in the areas of database connection and session handling) and enhancement possibilities (e.g., introducing basic security services).