This paper presents an interactive e-learning solution for Android mobile platform as an app for managing archaeological and architectural site useful to students in architecture, archaeology, restoration, surveying and civil engineering. The application connects to a web server and performs user authentication or registration to a database. Once authenticated, the user can scan QR codes associated to items of the site in order to access records from the database, view the map with the records already stored in the database, and add a new entry or edit an existing entry.
The application is developed as part of the RM360 project, a complex management system of the site of Ro?ia Montana (Alba County). The system includes a database, a web interface, two applications for mobile devices and a web server. The present application is made for Android where users can view, modify or add entries to the database of site items.
The RM360 management system is designed to be used in an archaeological site that contains various architectural objects and historical monuments. Each item of the site is assigned a specific identification number encoded as a QR code. The QR code is prominently placed on the lens so that any visitor to the site can use the app to find out more information about the monument in front of him/her. After scanning the QR code and view the corresponding sheet from the database, the user could notice inconsistencies regarding the actual conservation state of the item and conservation status described in the database. In this situation, the user can help to update the database through an amendment to the application and sending it to the web server. An administrator will then check and save data changes in the database if they are correct.
Another feature of the app is to view the map sheets of existing items in the database, along with the user's location. The user can choose to view a document by selecting it on the map so that it can access information about all architectural or archaeological targets close to and can choose what to visit. Such an e-learning application can also function as an e-tourism tool.
Users of the application can help to enrich the database with new items, being able to introduce new item sheets. User input will be checked by an administrator and added to the database, where they are correct.
The application was achieved using the Java programming language. For generating the graphical interface XML language was used and for communication with the server JSON language was used. The development environment used is Android Studio.
In the application we have implemented:
- A mechanism to authenticate existing users and to register new users in the database;
- A QR code reader containing the identification code of the items in the database, using an open-source library;
- A mechanism for sending requests to the web server using a background thread to keep active the graphical interface;
- A Google map that displays various labels identifying items in the database, according to data from the web server;
- The possibility to edit a database entry or add a new entry in the database and to send data to the server.
This application can send requests to a web server and this in turn will make database queries and send query results to the application. The application contains eight classes that represent activities, and each class loads a layout using an XML file.
The developed application described in this paper has 8 activities:
o Login (existing users);
o Register (new users);
o Main Activity (main screen);
o Scan Screen (for QR codes);
o Screen Modify (edit existing files);
o Activity Maps (with pointing flags on Google Maps);
o View Screen (to study existing files);
o Add Screen (to introduce new files).
This project involved the completion of all steps related to the development of a software product, from planning the application structure to its implementation. This paper shows how to build an interactive e-learning application (with an important e-tourism feature) for Android platform using XML, how to integrate Google Maps into such an application, how to send HTTP requests to a web server using a background thread, how to analyze and display on the mobile device the reply of this server. In addition, the paper shows how to integrate an external library can be integrated in the project and how to use this integrated library in order to recognize and scan QR codes.