About this course
Android is the mobile operating system from Google that runs on many smart phones and tablets. There are millions applications that run on Android.
The Android Development course is for Java programmers. It will teach you how to create your own Android apps. You will learn how the Android development process works, how to write simple GUI applications using Jetpack Compose, how to work with data and how to use the built-in components.
What others say
A. Essop
R. Bekker
E. Themba
N. Pretorius
D. Combrink
C. Oosthuizen
D. Nel
M. Fokane
T. Sibanyoni
Why you want to attend
You should attend the Android Development course if:
- You are a Java programmer and you want to learn to develop Kotlin applications that run on Android devices.
- You are a Java/Kotlin programmer and you need to support Android code.
What you need to know first
Before you attend the Android Development course:
- You must have attended our Java Programming course or already be comfortable with the fundamentals of the Java programming language.
- You should have at least 6 months practical experience programming in Java.
Price and duration
Price: R14,800.00 excluding VAT per delegate.
This price includes everything that you need:
- All course material, provided in an electronic format.
- An attendance certificate after the course, in PDF format.
Duration: 5 days.
The Android Development course is presented virtually. Find out more about our virtual training and how it works.
This course is only scheduled on request for group bookings. Please contact us to discuss a date.
How to book
It’s so easy to book for the Android Development course.
Just email us at info@incusdata.com. You can send us a purchase order, or fill in our course enrolment form.
After we have received your booking, we will confirm that you are booked, and we’ll send you an invoice.
Detailed course contents
Android Overview
- System architecture and application framework.
- Android runtime (ART) VM and DEX/OAT files.
- Android libraries and C/C++ libraries.
- Android Jetpack as a collection of Android technologies and tools.
- Understanding Kotlin’s role in modern Android development.
- Android API levels and backward compatibility.
SDK Overview
- Android Development Tools (ADT).
- Android Virtual Device (AVD) emulators and debugging tools.
- Android Studio and Kotlin setup.
- Jetpack Compose libraries and integration.
Developing Apps
- Activity lifecycle.
- Kotlin-based “Hello World” app with Jetpack Compose.
- Manifest file and resource management.
- Communicating and switching between activities.
- Lifecycle-aware components with ViewModel and State.
- Creating and navigating between screens using Compose Navigation.
- Application APK file.
- Execution on an emulator and physical devices.
Kotlin Programming
- Setting up Kotlin in Android Studio.
- Java and Kotlin interoperability.
- Kotlin as an alternative JVM language.
- Mutable and immutable variables.
- Type inference.
- Nullability and null safety.
- Expressions, operators and control flow.
- Functions and lambdas.
- Classes and collections.
Development with Jetpack
- Overview of Jetpack Compose as a declarative UI framework.
- Jetpack Compose as a modern toolkit for building native Android GUIs.
- Android KTX as a set of Kotlin extensions to simplify app development.
- Libraries like ViewModel, LiveData and Navigation to simplify data binding, lifecycle management and navigation.
- Additional libraries such as CameraX, RecyclerView and WorkManager.
Jetpack Compose UI Development
- Compose basics – composable functions, modifiers, layouts.
- Text, Image, Button, and other built-in composables.
- Layouts in Compose – Column, Row, Box, and ConstraintLayout.
- Handling user interactions and events.
- Theming and styling with Material Design in Compose.
- Custom composables and drawing.
Jetpack Compose Widgets
- Buttons, radio buttons and checkboxes.
- Labels and text boxes.
- Menus and progress indicators.
- Time/date pickers and dialogs.
- Top and bottom appbars.
- Scaffolds, surfaces and canvases.
- Lists and grids.
- Dynamic lists with LazyColumn and LazyRow.
State and Data Management with Jetpack
- Lifecycle-aware components with ViewModel and State.
- Managing UI state with ViewModel and StateFlow/LiveData.
- Data binding and unidirectional data flow.
- Room Persistence Library for local database storage.
- Advanced state management techniques (rememberSaveable, derivedStateOf).
Storage
- Serializable, Parcelable and Bundles.
- Data storage options – SharedPreferences, Room Database.
- Internal and external storage.
- File I/O in Kotlin.
- Cloud storage integration using Firebase.
Advanced Compose and Android Features
- Introduction to Kotlin Coroutines and Flow for asynchronous tasks.
- Understanding Clean Architecture and MVVM in Compose.
- Integrating with system services (camera, location, sensors).
- Media playback with Media3.
- Publishing to the Play Store with App Bundles.
- Retrofit and Ktor for networking and web services.
- Dependency injection with Hilt.
Download the course outline
Download the Android Development course outline in PDF format.