Service and Application Development for Operating System Android

Course Description

The course is designed to offer students an opportunity to acquire knowledge needed to develop Android applications, and also server side services which will be used by these applications. web projects. Topics and themes covered include: foundations of the Java programming language, object-oriented design in Java, Android platform architecture, graphical user interface, using specific hardware, data access for Android, accessing different services on Internet, developing RESTful web services and accessing them from Android.

General Competencies

Upon completion of the course the student should be able to: employ object-oriented programming principles, use common Java classes and interfaces, apply data structures and streams, use Java logging and exception handling facilities, access databases from Java, use Eclipse integrated development environment, independently develop Android applications, utilize Android GUI components, access specific Android hardware, independently develop distributed Android applications and effectively work in small teams.

Learning Outcomes

  1. develop application in object-orijented programming language Kotlina independently and in team
  2. develop application for device with operating system Android
  3. design and develop service on server
  4. apply network programming in development of Android applications
  5. relate service with database on Android and on server

Forms of Teaching

Lectures

Lectures are held two hours per week, and are accompanied by a presentation and other materials which are previously uploaded on the course web site.

Laboratory Work

Laboratory excercises involve collaborative projects in small teams and weekly consultations with lecturer.

Consultations

Teams have weekly consultations with lecturer.

Programming Exercises

homework

Other Forms of Group and Self Study

application development in team

Week by Week Schedule

  1. Introduction in Android and basics of application development
  2. Introduction to Kotlin and comparison with Java
  3. Graphical user interface - 1st part
  4. Graphical user interface - 2nd part
  5. Services ans asynchronous background execution
  6. Using Android local data storage
  7. Using REST services from Android
  8. Developing REST services by using SpringBoot
  9. Accessing specific Android hardware
  10. Dependency management: Gradle, product flavors
  11. Final phases of application development (Google Play) and advanced topics

Study Programmes

University undergraduate
Computer Engineering (module)
Skills (6. semester)
Computer Science (module)
Skills (6. semester)
Computing (study)
Skills (4. semester)
Control Engineering and Automation (module)
Skills (6. semester)
Electrical Engineering and Information Technology (study)
Skills (4. semester)
Electrical Power Engineering (module)
Skills (6. semester)
Electronic and Computer Engineering (module)
Skills (6. semester)
Electronics (module)
Skills (6. semester)
Information Processing (module)
Skills (6. semester)
Software Engineering and Information Systems (module)
Skills (6. semester)
Telecommunication and Informatics (module)
Skills (6. semester)
Wireless Technologies (module)
Skills (6. semester)
University graduate
Computer Engineering (profile)
Skills (2. semester)
Computer Science (profile)
Skills (2. semester)
Control Engineering and Automation (profile)
Skills (2. semester)
Electrical Engineering Systems and Technologies (profile)
Skills (2. semester)
Electrical Power Engineering (profile)
Skills (2. semester)
Electronic and Computer Engineering (profile)
Skills (2. semester)
Electronics (profile)
Skills (2. semester)
Information Processing (profile)
Skills (2. semester)
Software Engineering and Information Systems (profile)
Skills (2. semester)
Telecommunication and Informatics (profile)
Skills (2. semester)
Wireless Technologies (profile)
Skills (2. semester)

Literature

Bruce Eckel (2006.), Thinking in Java, Prentice Hall
Shane Conder, Lauren Darcey (2010.), Android Wireless Application Development, Addison-Wesley Professional
Zigurd Mednieks, Laird Dornin, G. Blake Meike, Masumi Nakamura (2011.), Programming Android, O'Reilly Media
Marko Gargenta (2011.), Learning Android, O'Reilly Media

Laboratory exercises

Grading System

ID 91617
  Summer semester
4 ECTS
L0 English Level
L1 e-Learning
26 Lecturers
0 Exercises
39 Laboratory exercises

General

Excellent
Very Good
Good
Acceptable