Mobile App Development with Titanium Studio by Jason Foster

Develop apps for Android, Blackberry, iOS, and HTML using a single code base with Titanium Studio's classic framework.
4.3 (11 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
141 students enrolled
25% off
Take This Course
  • Lectures 62
  • Length 9 hours
  • Skill Level All Levels
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

About This Course

Published 1/2015 English

Course Description

With mobile application development steadily on the rise, the ability to create native apps for multiple platforms using a single code base is certainly advantageous, if not essential. Titanium Studio is an IDE that allows developers to do just that.

This course offers in-depth instruction of how to effectively use Titanium Studio, as well as multiple hands-on projects, ensuring students can create apps for Android, Blackberry, iOS, and MobileWeb with a single code base using JavaScript.

Learn and Master Titanium Studio in this Comprehensive Course

  • Create new projects using JavaScript
  • Build mobile applications that utilize web services
  • Gain understanding of event listeners, layouts, and views
  • Become proficient in UI controls
  • Learn advanced app navigation and effective data display
  • Gain tips and tricks to assist in app design
  • Learn methods for quicker app development and plan for complicated projects

A Lucrative Tool For New and Experienced Mobile Developers Alike

Whether you are looking to work in the mobile development field, or want your apps to appeal to a wider mobile-audience, this course is for you. No longer do you have to choose to market to Android or iOS, or spend valuable time developing your app for both platforms. With less time spent developing and higher profits from an expanded market, this lucrative skill set is an asset to new and experienced developers alike.

Content and Overview

Comprised of more than thirty lectures and over four hours of content with multiple hands-on projects, this course offers in-depth instruction, covering everything from how to create a new project to using event listeners, layouts, and views. Students will learn to effectively use UI controls, such as image views, labels, text fields, text areas, switches, alert dialogues, activity indicators, web views, scroll views, scrollable views, and buttons.

Using the classic framework, students will build three apps, taking advantage of the tools provided in Titanium Studio. These projects are designed to maximize hands-on learning, with the final project being all-encompassing, tying together all course material and providing an excellent reference tool for future projects. Substantial sample code is provided in a format that is easy to follow.

Upon completion of the course, students will be proficient in Titanium Studio and have the knowledge and confidence to create functional, real-life apps.

What are the requirements?

  • Install Titanium Studio and Titanium Studio CLI
  • Install XCode if they have a mac
  • Install the Android SDK
  • Install Node.js
  • Install VirtualBox (Optional)

What am I going to get from this course?

  • In-depth instruction in developing mobile applications for both Android and iOS
  • Experience building mobile applications that utilize web services
  • Learn what an event listener is and when and when not to use it
  • Become proficient in the majority of UI controls provided in Titanium Studio
  • Learn to read wireframes and break them into UI controls

Who is the target audience?

  • You should be interested in mobile development
  • You should if you are interested in developing mobile applications for more than one platform (Android, iOS, Blackberry, etc)
  • You should have a basic understanding of Command-Line Interface (CLI)
  • You should have a basic understanding of JavaScript syntax
  • You should know what JSON is and how to create and read JSON objects
  • You shouldn't if you are using or wanting to use Titanium's Alloy framework
  • You shouldn't take this course if you have never programmed either on web or mobile

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.


Section 1: Course Introduction

A brief introduction of myself and the course.

10 pages

These slides provide links to all of the essential tools you will be using. It also cover what we willing be going over and not going over in the course.

9 pages

Before you get started I suggest you get Genymotion (Android) and TiShadow (Android & iOS) installed and setup.

Section 2: My First App & Example App

This lecture will be an introduction into Titanium Studio. We will be getting familiar with the IDE and going over :

  1. How to create a project
  2. Views and Windows
  3. Event Listeners

Download the example project from Github or you can setup the project from scratch.


We create a project from scratch. Then setup the navigation group and create a table view to hold all of our controls.


A label is the most widely used UI control for Titanium Studio. At its most basic functionality it displays text. After this lecture you should be able to create and use TiUILabels and know what the properties to use to best display your text content.


During this lecture we will show you about creating a default button. We will also be creating a button that uses an image as a background so you can customize your buttons for your own apps.


During this lecture I will show you how to create a basic Alert and AlertDialog. An Alert is a way of displaying information to a user. AlertDialogs are similar to an alert but also contain options for the user to select after the alert is displayed.


The PickerView is an input control used to display a set of values. In this lecture we will be creating a small game, where the user can match a name and a color. Note : This will work for iOS.


ImageViews is the control used to display images. During this lecture we will be creating an image view then manipulating that image using the 2DMatrix control.


ListViews are a great way of displaying a lot of data quickly. They are closely related to table views but are not customizable. During this lecture I will be creating two different ListViews to show you when you should be using a ListView instead of a TableView.


I will be going over creating how to create and use a WebView. WebViews are used to display static HTML or they can be used to display a website similair to a browser.


The ProgressBar is a great way of letting your user know of the current state of a download. In this lecture we will go over how to use a progress bar with fake data to simulate a download.


A Switch is an input control used for displaying a boolean value.


A ScrollView is a control that contains a mask which constrains its view to a set width and height but allows the content inside to be scrolled to display its full size. In this lecture I will be showing you a typical scenario of when a ScrollView should be used and how to use it.


In this lecture we will be creating the scrollable view.

5 questions

Test your basic understanding of the Titanium Studio UI controls.

Section 3: About our Project App
3 pages

Here is a basic wireframe of our final project. It goes over different scenarios users might face when using our app.


Designing of the main project application, also how to use wireframes to help organize and simplify your development process.


Will will be creating our Util library, a helper object with commonly used functions. Then we will be making changes to our TiApp, an XML configuration file that the Titanium SDK uses to generate native resources and code.


The second part of our Util, TiApp lecture we will be going over our App file, which is the starting point of our application. This is where we will set up our navigation groups.

Section 4: Recipe Hub - Web Services and Models
11 pages

This is very important, study this because the application will be very difficult to understand if you don't know this.


Creating an Http Client class that will make all of your web service calls.


Creating a base model object that persistent sub-objects will extend. This object will make all of the calls to the Http Client.


Our rating model will be used to rate recipes. It will be the first example of how our sub objects will use the base model object as a parent.


We will be creating the Category and Measurement Models that will be used to get constants that are stored in our database.


This model will be used to get all of the recipes from the web service. It will allow the user to GET and POST recipes.


Our user model is the most complicated model we will be creating. It will require us to use the Crypto JavaScript library to handle our password hashing.

Section 5: Recipe Hub - UI and Functionality

The rating view is our only view that does not require any other views to be created before it. Will will display the recipes rating with stars that are either selected or not selected.


In this lecture, we will be creating the view that we designed in the Recipe Hub - Design lecture.


During this lecture, we will be testing our app with some dummy data to make sure our app is on the right track.


In the first part of this lecture, we will be creating the table view that holds the recipes. Due to the size and complexity of the "Recipe Table View," this view had to be broken down into two lectures. We will start by creating the UI that will be used for the table view reloading.


In the second part of the recipe table view, we will be creating the bottom event which is used to grab the next set of recipes when the user has reached the last recipe that was loaded. We will then be creating the rest of the UI for the table view.


The menu view will contain a list of different options the user can select to sort, filter, login and more. We will be creating the view (tableview) that holds those options.


We will be creating the application window for handheld devices. Like the recipe table view, this window had to be broken down into two lectures. In this lecture, we will be creating the menu click event and animation.


In the lecture, we will complete the Application Window for handheld by adding the table view with its event handlers.


The popup view is the most complicated part of our application. This lecture will go over the UI portion of the Popup View.


This lecture will continue the UI portion of the Popup view, beginning with how we are going to be handling the different popup types.


Now that we have our popup view, menu view and application window created, we can start putting them together. This lecture will show you how the application window for handheld will use the popup view.


In this lecture we will be creating the UI for the form table view row (FTVR).


In the second part of the FTVR we will create and handle the popup views that are called with these rows.


The form table view section is the easy part of this tutorial series, we will be creating the section headers for the our Form Table View.


This is where we are going to be using the Form Table View Section and Form Table View Row.


In this part of the Login Window we create the different sections based upon the login type that is passed to the window as a parameter.


This lecture will cover a view that is going to be used in the Create Recipe Window. With this view the user will add ingredients to their recipe.


In this lecture we will be creating all the "Create Recipe Window", with the exception of one function. We will also be adding our Create Ingredient View to our window.


This lecture we will be adding one more function to the Create Recipe Window then testing the window to make sure everything we have so far works.


The Recipe Detail Window will hold the recipe view, recipe instructions and recipe ingredients. This is also were the user will be able to rate a recipe if they are logged in.


The Reference window was added at the last second to demonstrate how to use a tab group within a navigation group. It is a couple of simple table views that could also be list views.


This lecture will handle setting up the main UI and adding the menu view functionality to tablet. Which will use a popover view, a built in control for iOS.


This lecture we will be discussing how the Application Window for the tablet will be handling the event listeners used in its children views and windows.

Section 6: The grand finale

Thank you, for taking this course. If you would like to share your completed project please post a link to iTunes or the google play store.

Section 7: Files
2 pages

Helper file for the database connection

3 pages

Php file that handles the category model

12 pages

Html file for the documentation.

12 pages

Html file that handles the default index page

2 pages
Php file that handles the ingredient model
2 pages
Php file that handles the instruction model
2 pages
Php file that handles the measurement model
3 pages
Php file that handles the rating model
5 pages
Php file that handles the recipe model
4 pages
Php file that handles the user model

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Jason Foster, Web and Mobile App Developer (Android & iOS)

I fell in love with programming at age ten, building simple games using BASIC.

After I graduated from college, I developed e-commerce websites for a few years. When mobile application development started booming, however, I thought it would be a good opportunity to change my focus from web to mobile. While I still develop websites, my primary focus is on the mobile environment.

The first app I created in 2008 was for the iPhone; it had 800 downloads in the first day and jumped to 1500+ in the following weeks. I am committed to creating applications that people will use and benefit from in everyday life.

Ready to start learning?
Take This Course