Create an Augmented Reality (AR) Mobile Application with ARToolKit Training Course

Duration

7 hours (usually 1 day including breaks)

Requirements

  • Programming experience in any language.

Audience

  • Developers

Overview

ARToolKit is an open-source tracking library for creating Augmented Reality (AR) applications. It supports Windows, Linux, Mac, Android and iOS.

In this instructor-led, live training, participants will learn how to build an augmented reality mobile application with ARToolKit.

By the end of this training, participants will be able to:

  • Develop a mobile application that overlays virtual imagery onto the real world
  • Preprocess video to adjust lighting and resolve issues
  • Integrate ARToolKit with third-party tools and functionality, including OpenCV, Unity, OpenSceneGraph and the mobile device’s GPS, compass, and camera calibration utilities

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • The mobile application developed in this course can be target Android and/or iOS. To request your preference, please contact us to arrange.

Course Outline

Introduction

Preparing the Software and Hardware for AR

Overview of ARToolkit Features

Creating a Project

Capturing an Image

Creating 2D Content for AR

Overlaying Imagery onto a Live Background

Creating 3D Content for AR

Adjusting Lighting

Calibrating the Images

Preprocessing Video

Accessing the Mobile Device’s GPS

Accessing the Mobile Device’s Compass

Accessing the Mobile Device’s Camera 

Integrating ARToolKit with OpenCV

Integrating ARToolKit with Unity

Integrating ARToolKit with OpenSceneGraph

Troubleshooting

Summary and Conclusion

React Native Expo Training Course

Duration

7 hours (usually 1 day including breaks)

Requirements

  • Knowledge of or experience working with React and React Native.

Audience

  • Web application developers

Overview

React Native Expo is a set of tools, libraries and services that acts as an abstraction layer on top of React Native. It simplifies the deployment process, allowing you to generate a build with one click or command without having to create a developer account on various app stores. React Native Expo can be described as Rails for React Native.

In this instructor-led, live training, participants learn to use React Native Expo through discussion and hands-on practice. By the end of the course, participants will be equipped to create and deploy their own React Native application using React Native Expo.

For an introductory course on React Native, please see: React Native: Rapidly develop native iOS and Android apps with Javascript

Format of the course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

  • Why Expo?

Overview of Expo SDK

The Lifecycle of an Expo Project

  • From start to iOS and Android app

Installation and Setup

Creating a New Project in Expo XDE

Developing Your Project Locally

Using the Asset Management System

  • Handling images, videos, fonts, etc.

Implementing Icons, Blur Views, and More

Wiring up Push Notifications

Routing and Navigation

Publishing Your Project (Non-App Store Publication)

Publishing Your Project to App Store and Google Play

  • Packaging your Expo app into a standalone binary

Detaching Your Project to the ExpoKit

Making Changes to Your Local Project

Viewing Logs

Debugging Your App

  • Using an emulator/simulator

Troubleshooting

Removing a Published Expo Project

Summary and Conclusion

Titanium: Build Native Mobile Apps Using Javascript Training Course

Duration

7 hours (usually 1 day including breaks)

Requirements

  • Web development experience
  • Experience with Javascript, CSS and HTML

Overview

Appcelerator Titanium is an open-source development framework that enables the creation of native mobile apps on iOS, Android and Windows Phone from a single JavaScript codebase.

This training introduces the fundamentals of Titanium and walks participants through the creation of a Titanium mobile application.

Audience

  • Web application developers

Format of the course

  • Heavy emphasis on hands-on practice.
  • Most of the concepts are learned through samples, exercises and hands-on development.

Course Outline

Introduction

  • Titanium vs PhoneGap

Overview of the Titanium architecture

Installation and setup

Preparing your development environment

Preparing the app interface

Designing the app

Windows and views

Controls, input and interactivity

Using events, variables and callbacks

Reading and writing to the file system

Adding social media support to your app

Adding notification support to your app

Adding support for gestures to your app

Adding media support to your app

Adding map support to your app

Adding support for other phone native features

Enhancing the app interface with styles

Extending Titanium with modules

Testing your app

Debugging your app

Deploying your app

Contributing to the community

Closing remarks

iPhone and iPad Development using Swift 3 and Xcode 8 for iOS 10 Training Course

Duration

35 hours (usually 5 days including breaks)

Requirements

The course assumes some programming experience.

Overview

Who should attend?

This 5 day course is for developers who want to learn how to develop applications for iPhone and iPad running iOS 10. Xcode8, Swift3 and iOS 10 introduced significant changes in the way applications are written.

The course is hands on and shows how to develop applications from scratch using the Swift programming language and the Xcode 8 IDE.

During the course a fully functional application will be developed from scratch using Swift.

This course can only be run on Intel based Apple hardware such as a MacBook or a Mac Mini. Delegates need to have registered with Apple and have an Apple ID which is required to download software. Delegates wishing to run the applications developed during the course on an iPhone or iPad using a USB cable will need to register their device with Xcode.

Course Outline

Development environment

  • Development environment requirements
  • Xcode and the iOS SDK
  • Apple Developer Registration
  • Reasons why Applications get rejected
  • Human Interface Guidelines

Xcode iOS Projects

  • Overview of Xcode
  • Creating an iOS project
  • Running on simulator and real devices

Adaptive Layout

  • Storyboards
  • Multiple Device Support
  • Icon Sizing and Device Orientation
  • UI Components
  • Building a User Interface

Swift

  • Swift programming language overview
  • Variables, constants and data types
  • Language constructs
  • Using Xcode to develop Swift applications
  • Playground

Swift Classes and Scenes

  • Creating Swift classes
  • Instance variables and initialisation
  • Memory management
  • Strong and weak references
  • Constructor types
  • Protocols, Hashable and Printable
  • Inheritance
  • Creating Scenes
  • Implementing View Controllers
  • Outlets and Actions

Working with Graphics

  • Adding icons and images
  • Using the SpriteKit API
  • Animating Sprites

User Interaction

  • Buttons and handlers
  • Pan gesture recognition
  • Tap gesture recognition

Multiple Screen Applications

  • Table Navigation
  • Tabbed Applications
  • Navigation Controllers

Location Services

  • Position and Altitude
  • Compass Direction

Device Access and Storage

  • File Storage
  • Music Library Access
  • SQLite Database Access

Bluetooth

  • Bluetooth API
  • Centrals
  • Peripherals

Speech Framework

  • Speech to text
  • Text to Speech

Networking

  • Network Access
  • Serialising and Deserialising JSON
  • REST Web Services

Mobile Architectures & Solutions Training Course

Duration

21 hours (usually 3 days including breaks)

Requirements

  • Programming experience and ideally to be senior developer or Software Architect. Programming skills required (Minimum 3 years)

Overview

A tour of all available technologies for mobile development, as native development, hybrid development and cross native development. An introduction to the topics connected to the development of mobile apps as NoSql database, Cloud Computing, Social Networks and much more. A must for every software architect and senior developer involved in mobile apps development.

Audience:

  • Software Developers, Software Architects

Course Outline

Module 1

  • Introduction to Mobile
  • Native Development in Android, iOS and Windows Phone: Programming Languages, Tools and Technologies

Module 2

  • Introduction to Native Cross Platform environments: Titanium Appcelerator and Xamarin
  • Introduction to Hybrid Mobile Development: Apache Cordova
  • Cloud and Mobile Development

Module 3

  • Big Data and Mobile
  • Integrate your app with Social Networks
  • App Store, Google Play and Windows Phone Marketplace

Cross-platform mobile development with PhoneGap/Apache Cordova Training Course

Duration

21 hours (usually 3 days including breaks)

Overview

The objective of cross-platform frameworks is to allow you to write applications once and have it run on multiple platforms. Want to build an iPhone app that will also run on Android? Have a customer turn round and want their Android app to run on Windows Phone? No problem.

On this three-day PhoneGap/Apache Cordova course you will look at two different yet complimentary technologies for cross-platform mobile development. (Apache Cordova is the new name for PhoneGap. Adobe acquired PhoneGap from the original developers and gifted it to the Apache Software Foundation.)

Upon completion of this PhoneGap/Apache Cordova course, you will be able to build fully-functioning mobile Web applications using the framework, manage source code and handle platform tweaks, create “native like” experiences from a web application — and much more!

Course Outline

Day 1

  • Getting up and running
  • Accessing native capabilities of the device
  • Structuring source code and handling SCM
  • Persisting data locally
  • Building forms and communicating with the server

Day 2

  • Network communication
  • Managing source code and handling platform tweaks
  • Using plug-ins
  • Working with lists of data

Day 3

  • Using jQuery Mobile with PhoneGap applications
  • Presenting Lists of Data
  • Handling Touch Events
  • Packaging your apps

iOS Programming (iPhone/iPad) for Programmers Training Course

Duration

35 hours (usually 5 days including breaks)

Requirements

  • Previous development experience

Overview

All the skills and knowledge you need to make your first iPhone/iPad application using the latest iOS SDK and tools.

Course Outline

The environment

The iPhone Developer program and the tools (SDK, Xcode, IB, the iPhone/iPad simulator)

The language

  • Essential Objective-C
  • Using existing Cocoa classes and writing your own
  • The essential patterns

Performance and debugging

  • Memory management
  • Performance improvements
  • Debugging and troubleshooting
  • Multitasking
  • Multithreading essential

The User Experience

  • The application templates
  • The UI Controls
  • Creating different multi-view applications
  • The different gestures
  • UX rules and guidelines

Data management

  • Saving state
  • SQLite
  • XML
  • Core Data
  • Settings

Multimedia control and some special features

  • The camera API
  • The image picker
  • Playing and recording video
  • Playing and recording audio
  • The accelerometer
  • The proximity sensor
  • Notifications and the Event Kit
  • Quick intro on how to make 2D and 3D animations

Making location aware applications

  • Using core location

Targets and application types

  • iPhone vs iPad development
  • Universal applications
  • Intro to Web applications with HTML5 and CSS3
  • Interacting with a service
  • Hybrid applications

Delivering it to the public

  • Understanding iAd
  • Releasing to the App Store – The short path

Ionic 4 and Angular for Developers Training Course

Duration

21 hours (usually 3 days including breaks)

Requirements

  • Basic JavaScript, HTML, and CSS programming experience

Audience

  • Web Developers

Overview

Ionic is a web framework for hybrid mobile application development. Ionic 4 brings new innovations to the Ionic platform such as a refactored CLI, changes in navigation, Angular routing, and more.

This instructor-led, live training (online or onsite) is aimed at web developers who wish to create a hybrid mobile application with Ionic 4.

By the end of this training, participants will be able to:

  • Integrate native device features into a hybrid mobile application.
  • Use Angular and Ionic 4 to build a hybrid mobile application.
  • Run a hybrid application on a mobile device emulator.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

Ionic Basics

  • Processes and modules used in Ionic for web development
  • How Ionic and Angular work together

Overview of Angular

  • Components and attributes used in Angular

Preparing the Development Environment

  • Installing Ionic and Angular
  • Installing Cordova
  • Testing installations with Ionic Lab

Templating in Ionic and Angular

  • Using Ionic grids
  • Setting styles and variables
  • Creating CSS rules
  • Generating services
  • Consuming REST APIs
  • Creating and using a data model
  • Testing with Ionic DevApp

UI Components

  • Generating and routing pages
  • Retrieving data
  • Adding page design
  • Using lists
  • Generating pages with modals and fabs
  • Implementing complex lists
  • Using pull to refresh
  • Adding an auth guard

Ionic Native

  • Setting up Ionic Native packages
  • Accessing native device features
  • Testing native device features

Connecting to a Backend

  • Setting up Firebase
  • Creating auth guards and services
  • Sending data via HTTP
  • Fetching, displaying, and loading data

Troubleshooting with Cordova

  • Preparing for Android standards
  • Running a hybrid application on an Android device emulator
  • Preparing for iOS standards
  • Running a hybrid application on a iOS device emulator

Summary and Conclusion

BLoC Pattern Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

  • Basic understanding of how Flutter works

Audience

  • Developers

Overview

Business Logic Component (BLoC) is a design pattern by Google that allows the separation of business logic from the presentation layer.

This instructor-led, live training (online or onsite) is aimed at developers who wish to learn how to use BLoC Pattern to manage state across different applications.

By the end of this training, participants will be able to:

  • Understand the BLoC core concepts and architecture.
  • Create, test, and debug BLoCs.
  • Learn about the BLoC build context.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

Overview of BLoC Pattern

BLoC Core Concepts

Flutter BLoC Core Concepts

BLoC Architecture

Creating a BLoC

Injecting BLoCs Into a Widget Tree

Wiring Up the Article List Screen

BLoC Testing

Access and Navigation

BLoC Communication

BLoC Build Context

Working with Local Storage

Debugging BLoC

Summary and Next Steps

Fuchsia OS for Developers Training Course

Duration

21 hours (usually 3 days including breaks)

Requirements

  • An understanding of distributed computing concepts
  • Programming experience (As of 2021, Fuschia supports C++, Python, DART, Go, Rust, FIDL)

Audience

  • Developers

Overview

Fuchsia OS is an open source operating system developed by Google. It runs on many platforms, from embedded systems and smartphones, to tablets, and personal computers. It may replace Android and Chrome in the future.

This instructor-led, live training (online or onsite) is aimed at developers who wish to develop apps that run on Fuchsia OS or tailor the OS to run on different devices.

By the end of this training, participants will be able to:

  • Understand the internals of the Zircon MicroKernel.
  • Embed Fuchsia OS on a variety of devices, including tablets, mobile devices and virtual machines.
  • Develop apps that run on Fuchsia OS.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

  • Overview of Fuchsia OS Features and Architecture
  • Understanding Zircon
  • Overview of Flutter for building apps.

Setting up the Development Environment

  • Getting the source code
  • Building Fuchsia
  • Using the emulator

Getting Started

  • Understanding the Fuchsia workflow
  • Running a Fuchsia component
  • Working with an editor
  • Using FFX (CLI)
  • Using FIDL (IPC system)
  • Exploring the diagnostics tools

Getting Fuschia on a Device

  • Overview of the device installation process (“paving”)
  • Building, creating install media, paving

System Development

  • Modifying the kernal
  • Developing a driver

Testing your Code

  • Unit tests
  • Integration tests

Developing Components

  • Defining packages, components, and tests.
  • Working with component manifests

Developing Sessions

  • How sessions affect the user experience
  • Creating a configuration file
  • Launching a session

Developing the Integrator Development Kit (IDK)

  • How the IDK works
  • Obtaining the source
  • Enhancing the IDK

Internationalization

  • Encoding
  • Reading and writing i18n settings

Contributing to the Community

  • Contributing source code

Summary and Conclusion