Skip to main content
Skip header

Design of Applications for Mobile Devices II

* Exchange students do not have to consider this information when selecting suitable courses for an exchange stay.

Course Unit Code460-4136/01
Number of ECTS Credits Allocated4 ECTS credits
Type of Course Unit *Choice-compulsory type A
Level of Course Unit *Second Cycle
Year of Study *First Year
Semester when the Course Unit is deliveredWinter Semester
Mode of DeliveryFace-to-face
Language of InstructionCzech
Prerequisites and Co-Requisites There are no prerequisites or co-requisites for this course unit
Name of Lecturer(s)Personal IDName
KRU13Mgr. Ing. Michal Krumnikl, Ph.D.
Summary
This course is the continuation of "Design of Applications for Mobile Devices I". It is aimed at advanced programming techniques focused on exploiting the potential of mobile devices. Topics covered during the course are : multimedia, network applications, games and other applications using synchronization.
Learning Outcomes of the Course Unit
The course is focused at advanced programming techniques for mobile devices, especially mobile phones running OS Android. After the successful completion of the course students should be able to:

- Identify the application domain of mobile devices.
- Describe methods and processes used in application development.
- Distinguish the main differences between Android platforms.
- Outline fundamental conceptions used in the area of multimedia, network and synchronization application.
- Modify desktop application and adapt it for mobile devices.
Course Contents
Lectures:

* OS Android Architecture, Dalvik VM, ART, Development Tools.
* Applications, Actions, Intents and Android Manifest.
* UI development, View, Layout, Fragment, Menu.
* Data storage, Shared Preferences, Internal/External Storage, SQLite.
* Network connection, Sockets and Data Parsing, JSON.
* Security, Encryption, Application Signing, Java Cryptography Architecture.
* Asynchronous events, Multitasking, Threads and Synchronization.
* Graphics and Game Design, Game Loop, Game Libraries.
* Multimedia Applications - Audio, Video, Playback and Record, Processing Image and Audio Data.
* 2D and 3D Acceleration, OpenGL ES.
* NFC (Near field communication), Mobile Sensors.
* Reverse Engineering and Protection, Code Obfuscation, Optimizations.
* 3rd Party Libraries.
* Google Play, Finance Models for Selling Mobile Applications.

Practical Labs:

* Introduction to Development Tools. Creation of Simple Application and Deployment on Mobile Phone or Emulator.
* Basic Application's Components. Activities, Passing Data, Intents.
* Custom View, Drawing Content, Event Processing.
* Parsing XML Files. Using ListView for Displaying Content.
* Network Connection, Downloading Content, Offline Mode.
* Implementation of Simple Game, Drawing on Canvas.
* File and Socket Input/Output. Loading and Saving Structured Data.
* Remote Procedure Call, Network Services.
* SQLite Database and its Usage.
* Rendering 3D Graphics, Simple Physics, OpenGL ES.
* Threads and Synchronization.
* Processing Sound and Image Data, Simple Analyses.
* Usage of 3rd Party Libraries.
* Examples of Code Obfuscation, Tools for Reverse Engineering.
Recommended or Required Reading
Required Reading:
RETO, Meier, Professional Android, Wrox; 4th edition, 2016. ISBN: 1118949528
NEIL, Smith, Android Studio 4.1 Development Essentials - Kotlin Edition: Developing Android 11 Apps Using Android Studio 4.1, Kotlin and Android Jetpack, Payload Media, 2020. ISBN 978-1951442231
GERBER, Adam, CRAIG, Clifton. Learn Android Studio: build Android apps quickly and effectively. Berkeley, CA: Apress, 2015. ISBN 1430266015.
YAO, Paul, DURANT, David. Programming .NET Compact Framework 3.5. 2nd ed., Completely rev. and updated. Upper Saddle River, NJ: Addison-Wesley, c2010. Microsoft .NET development series. ISBN 0321573587.
RETO, Meier, Professional Android, Wrox; 4th edition, 2016. ISBN: 1118949528
NEIL, Smith, Android Studio 4.1 Development Essentials - Kotlin Edition: Developing Android 11 Apps Using Android Studio 4.1, Kotlin and Android Jetpack, Payload Media, 2020. ISBN 978-1951442231
VÁVRŮ, Jiří a Miroslav UJBÁNYAI. Programujeme pro Android. 2. rozš. vyd. Praha: Grada Publishing, 2013. ISBN 978-80-247-4863-4.
HERODEK, Martin. Android jednoduše. 2. vyd. Brno: Computer Press, 2014. ISBN 978-80-251-4298-1.
GERBER, Adam, CRAIG, Clifton. Learn Android Studio: build Android apps quickly and effectively. Berkeley, CA: Apress, 2015. ISBN 1430266015.
Recommended Reading:
MEIER, Reto. Professional Android 4 application development. [3rd ed.]. Indianapolis, IN.: Wiley/[Wrox], 2012.
Advanced Android Application Development. Addison-Wesley Professional, 2014. ISBN 0133892387.
Open Mobile Alliance, SyncML, Internationalization (i18n)
MEIER, Reto. Professional Android 4 application development. [3rd ed.]. Indianapolis, IN.: Wiley/[Wrox], 2012.
Advanced Android Application Development. Addison-Wesley Professional, 2014. ISBN 0133892387.
Open Mobile Alliance, SyncML, Internationalization (i18n)
Planned learning activities and teaching methods
Lectures, Tutorials, Other activities
Assesment methods and criteria
Task TitleTask TypeMaximum Number of Points
(Act. for Subtasks)
Minimum Number of Points for Task Passing
Credit and ExaminationCredit and Examination100 (100)51
        CreditCredit45 24
        ExaminationExamination55 27