Course Outline

Introduction

  • What is Android?
  • Modern Android SDK
  • Android Runtime (ART)
  • The Modern Software Stack
  • Development Tools (Android Studio)
  • Modern User Interface Approaches
  • Installing Development Tools
  • Content Providers
  • Services
  • Intents
  • Activities
  • Views and Jetpack Compose
  • Configuration File (AndroidManifest.xml)
  • Simple Hello World with Modern Approach
  • Application Artifacts
  • Asset Packaging Tool
  • Entry Point Activity
  • Modern Intent Usage
  • Calling Other Activities
  • The Activities Stack
  • Lifecycle-Aware Components
  • Room Database
  • Modern System Management
  • Separated Processes
  • Modern Component Architecture

Application Resources

  • What are Resources?
  • String Resources
  • Layout Resources (XML and Compose)
  • Resource Reference Syntax
  • Compiled Resources
  • Modern Animation Systems
  • Vector Drawables and Modern Bitmaps
  • Compiled UI Definitions
  • Compiled Arrays
  • Compiled Colors
  • Compiled Strings
  • Compiled Styles
  • Compiled Arbitrary Raw XML Files
  • Uncompiled Resources
  • The .aab (Android App Bundle) File
  • Assets and Resources Directory Structure

The Intent Concept

  • Modern Intent Filter
  • Use Intent to Start Activity
  • Android Available Intentions
  • Intent Categories
  • Late Run-Time Binding
  • Use Intent to Start Service
  • Broadcast Receivers
  • The Intent Object Structure
  • The Intent Component Name
  • The Intent Action
  • The Intent Data
  • The Intent Category
  • The Intent Extras
  • The Intent Flags
  • Modern Intents Resolution
  • Intent Filter Structure
  • The Action Test
  • The Category Test
  • The Data Test
  • Multiple Matches
  • Android Predefined Intents

User Interface Controls

  • Modern GUI Approaches
  • Jetpack Compose Basics
  • Traditional XML Layouts
  • Hybrid XML & Compose Approaches
  • TextView and Modern Text Components
  • TextView Sample
  • TextView Style Sample
  • EditText and TextFields
  • EditText Sample
  • AutoCompleteTextView
  • AutoCompleteTextView Sample
  • Modern Selection Controls
  • Button and Modern Button Components
  • Button Sample
  • ImageButton
  • ImageButton Sample
  • ToggleButton
  • ToggleButton Sample
  • CheckBox Control
  • CheckBox Control Sample
  • RadioButton Control
  • RadioButton Control Sample
  • Modern List Components (RecyclerView, LazyColumn)
  • List Sample
  • Grid Components
  • Grid Sample
  • Date and Time Controls
  • Modern Image Displays
  • MapView Integration
  • WebView Modern Usage

Layout Managers

  • Modern Layout Systems
  • ConstraintLayout
  • LinearLayout
  • Layout Weight
  • Gravity
  • TableLayout
  • Padding Properties
  • RelativeLayout
  • FrameLayout
  • Compose Layouts (Column, Row, Box)
  • Modern Navigation Components

Menus and Dialogs

  • Modern Menu Patterns
  • MenuItem Interface
  • Context Menus
  • Menu Items Group
  • Menu Items Attributes
  • Modern Action Patterns
  • Alternative Menu Items
  • Creating Modern Menus
  • Menu Items Groups
  • Menu Items Events Handling
  • Modern Callback Patterns
  • Define Listener
  • Using Intents
  • Modern Dialog Systems
  • Alert Dialog
  • Material Design Dialogs
  • Prompt Dialog

Touchscreens and Gestures

  • Modern Motion Events
  • Gesture Sequences
  • Advanced Gestures Handling
  • Modern Gesture Handling Methods

Style Definition

  • Modern Style Definition
  • Style Definitions Inheritance
  • Style Properties
  • Material Design 3 Theming
  • Theme Definition
  • Predefined Material Themes
  • Inherit Predefined Theme
  • App Widgets Development
  • App Widgets Overview
  • Practical Samples
  • Modern App Widget Structure
  • Configuration Activity
  • Modern Design Guidelines

Location Based Services

  • Modern Location APIs
  • Privacy and Permissions
  • Required Modern Permissions
  • Modern Location Services
  • Maps Integration
  • Maps Overlays
  • Modern Geocoding
  • The Address Class
  • The LocationManager Class
  • The LocationListener Interface
  • Modern Location Updates

Web Services and Networking

  • Modern Networking Libraries
  • Retrofit and OkHttp
  • HTTP Requests
  • HTTP Get Request
  • HTTP Post Request
  • Modern Timeout Handling
  • Coroutines for Networking
  • Background Threading

Android Services

  • Creating Modern Services
  • The Service Class
  • Modern Background Tasks
  • Foreground Services
  • WorkManager
  • Local Services
  • Remote Services
  • Modern IPC Patterns

Media Framework

  • Modern Media Playback
  • Playing Audio
  • Playing Video
  • ExoPlayer Integration
  • Modern Media Player Demos

Android Security Model

  • Modern Deployment
  • App Signing
  • Google Play Signing
  • Deployment using Android Studio
  • Modern Process Management
  • Declarative Permission Model
  • Privacy and Data Security

Graphics Animation

  • Modern Animation Systems
  • MotionLayout
  • Compose Animations
  • Property Animation

Basic Graphics

  • Modern Drawable Systems
  • Vector Drawables
  • ShapeDrawable Usage

OpenGL Graphics

  • Modern Graphics APIs
  • Vulkan Integration
  • The glVertexPointer Method
  • The glDrawElements Method

Customized Views

  • Custom Composables
  • Custom Views
  • Modern Progress Indicators
  • Model View Controller Patterns

Android Coroutines and Threading

  • The UI Thread
  • The Single Thread Rule
  • Coroutine Scopes
  • ViewModel Integration
  • The Handler Class
  • The Coroutines Utility
  • Background Processing Patterns

Application Life Cycle

  • Modern Activity Life Cycle
  • ViewModel Lifecycle
  • The onStart() and onResume() Methods
  • The onPause() and onStop() Methods
  • Return Back to Previous Activity
  • The onStop() and onDestroy() Methods
  • The onCreate() Method
  • The onPause() Method

Room Database

  • Room Implementation
  • The Room Database Class
  • Entities and DAOs
  • The onCreate() Method
  • The onUpgrade() Method
  • Database Queries
  • The insert() Method
  • The delete() Method
  • The query() Method

Content Providers

  • Modern Content Providers
  • Room Database Integration
  • Content Providers Architecture
  • Content Providers Registration
  • Using Content Provider
  • Retrieving Records, Adding Records
  • The Cursor Object, The ContentValues() Object
  • Content Provider Demo
  • Developing Content Providers
  • Changes Notification

Data Storage

  • Modern DataStore
  • SharedPreferences Modern Usage
  • File Management
  • Creating Files
  • Accessing Simple Files
  • Accessing Raw Resources
  • XML Files Resources
  • Cloud Storage Options

Modern Runtime

  • ART vs Dalvik
  • The dex File Format
  • The D8/R8 Compiler
  • Modern Garbage Collector
  • Performance Optimization

Background Applications

  • Modern Background Processing
  • WorkManager Services
  • Background Threads
  • Modern Notifications
  • Foreground Services
  • System Management

Activity Data

  • Modern Intent Usage
  • Start Activity Methods
  • Passing Data between Activities
  • ViewModel Data Sharing
  • Coherent User Experience

Messaging

  • Modern SMS Integration
  • The SmsManager Class
  • The SEND_SMS Permission
  • Sending SMS
  • Receiving SMS
  • Chat Applications

Telephony

  • Modern Phone Calls
  • The android.telephony Package
  • Call Management
  • PhoneStateListener Class
  • The TelephonyManager Class
  • VoIP Integration

Web View

  • Modern WebView
  • The android.webkit Package
  • The INTERNET Permission
  • The loadUrl() Method
  • JavaScript Support
  • The loadData() Method
  • The WebViewClient Class
  • The WebChromeClient Class

Kotlin Language

  • Kotlin for Android
  • Modern Language Features
  • Third Party Libraries

Debugging

  • Android Studio Debugger
  • Modern Profiling Tools
  • Logcat
  • Android Debug Bridge
  • Performance Profiling
  • Modern Testing Frameworks

Adapters

  • Modern Adapter Patterns
  • RecyclerView.Adapter
  • ListAdapter
  • The ArrayAdapter Class

Live Wallpapers

  • Modern Live Wallpaper
  • User Interaction
  • Performance Optimization

BroadcastReceiver

  • Modern Broadcast Patterns
  • Registering a Receiver
  • Receiver Life Cycle

Bluetooth

  • Modern Bluetooth
  • The BluetoothAdapter Class
  • The BluetoothDevice Class
  • Bluetooth Permissions
  • Setting Up Bluetooth
  • Finding Devices
  • Modern Bluetooth Connections

Text To Speech

  • Modern TTS Engine
  • TTS Implementation
  • Voice Assistant Integration

Android Search

  • Modern Search Integration
  • Search Suggestions
  • The onSearchRequest() Method
  • Suggestion Provider

Camera

  • Modern CameraX
  • Camera2 API
  • Image Analysis
  • Picture Parameters

Sensors

  • Modern Sensor Integration
  • The SensorManager Class
  • The SensorListener Interface
  • Accelerometer
  • Compass
  • Other Sensors

Vibration

  • Modern Vibration API
  • The Vibrator Class
  • Vibration Sequences

WiFi Connectivity

  • Modern WiFi Management
  • The WifiManager Class
  • User Permissions
  • Network Connectivity

Networking

  • Modern Networking
  • HTTP/2 Support
  • WebSocket Integration
  • Network Security

Input Method Framework

  • Modern Input Methods
  • Custom Keyboards
  • Voice Input Integration

Device Configuration

  • Modern Configuration Handling
  • Responsive Layouts
  • Resource Qualifiers

Localization

  • Modern Localization
  • Default Resources
  • RTL Support
  • Testing

Memory Management

  • Modern Memory Management
  • The Application Context
  • Lifecycle Awareness
  • Performance Optimization
  • Garbage Collector

Speech Input

  • Modern Speech Recognition
  • Voice Assistant Integration
  • The Language Model
  • Voice Commands

Development Tools

  • Modern Android Studio
 56 Hours

Delivery Options

Private Group Training

Our identity is rooted in delivering exactly what our clients need.

  • Pre-course call with your trainer
  • Customisation of the learning experience to achieve your goals -
    • Bespoke outlines
    • Practical hands-on exercises containing data / scenarios recognisable to the learners
  • Training scheduled on a date of your choice
  • Delivered online, onsite/classroom or hybrid by experts sharing real world experience

Private Group Prices RRP from £9500 online delivery, based on a group of 2 delegates, £3000 per additional delegate (excludes any certification / exam costs). We recommend a maximum group size of 12 for most learning events.

Contact us for an exact quote and to hear our latest promotions


Public Training

Please see our public courses

Testimonials (4)

Provisional Upcoming Courses (Contact Us For More Information)

Related Categories