Mobile Applications Development

Instructor(s): Leonidas Akritidis
Teaching Hours and Credit Allocation: 30 Hours, 6 Credits
Course Assessment: Exam & Coursework


Aims: This course introduces the students to the basic concepts of mobile computing technologies. It presents the features of the current state-of-the-art mobile operating systems and describes the most important tools for developing applications in these devices. In the sequel, the course focuses on the Android API and performs a detailed walkthrough on how robust, effective and user-friendly applications can be built.

Learning Outcomes: The students will be given the opportunity to learn the basic design and development strategies for implementing mobile applications. The following list summarizes these strategies:

· Description of a typical mobile environment and how an app respects the underlying limitations,

· Introduction of the principles of the Android OS,

· Lifecycle of an Android app,

· Communications with external (re)sources,

· Database connectivity,

· Publicationof an application in PlayStore and other repositories.

Content: The content of the course includes:

· Mobile devices, hardware, power and battery, limitations.

· The Android Operating System, and its API. The Android Development Studio.

· User interface control elements: Views, Layouts and types, Viewgroups,

· Events and Handling.

· Menus and Dialogs.

· Communication with remote services over http.

· Database essentials. SQLite database.


· Ian Darwin, “Android Cookbook: Problems and Solutions for Android Developers”, O’ Reilly, 2017.

· David Griffith, “Head First Android Development”, O’ Reilly, 2015.