Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Appcelerator Titanium Application Development by Example Beginner's Guide
Appcelerator Titanium Application Development by Example Beginner's Guide

Appcelerator Titanium Application Development by Example Beginner's Guide: Once you've got into Appcelerator Titanium you'll never look back. This book is the perfect introduction to developing native cross-platform apps for iOS, Android, and Windows 8.

eBook
€22.99 €32.99
Paperback
€41.99
Subscription
Free Trial
Renews at €18.99p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Table of content icon View table of contents Preview book icon Preview Book

Appcelerator Titanium Application Development by Example Beginner's Guide

Chapter 1. How to Get Up and Running with Titanium

This first chapter covers the installation of Titanium and associated tools needed to create and test cross-platform apps. By the end of this chapter you will have created a simple app that will run without modification on iOS and Android phones, and tablets.

Congratulations! Give yourself a pat on the back; you have taken a big step towards creating great apps that work on both iOS and Android. You have made a very wise choice. The Titanium application from Appcelerator allows you to design native apps, apps that run on the device itself and not via a browser or over the Internet. Furthermore, a Titanium app is written in JavaScript, which if you have not used before, is a really nice, flexible language to write code in. It's certainly not just a language for making small scripts in a browser which is what it is commonly known for.

You will be using tried and tested functionality. Appcelerator started releasing apps to the Apple App Store in 2009. Since then over 50,000 apps have been deployed to both iOS and Android stores including flagship apps from eBay and NBC. The company has attracted over $50 million of funding from venture capitalists who have seen the potential. You will be supported by both the company and an ever-growing group of nearly 500,000 registered developers. With support for HTML5 web apps and plans to support both Blackberry 10 and Windows 8 later this year, the case for success becomes stronger and stronger.

You have shown an interest in the best tool for creating cross-platform native apps; apps that can make use of the features of the dominant smartphone and tablet platforms. This book will take you from the initial installation of the tool right through to the publishing of a polished app.

By the end of this book you should be able to publish quality apps through both the Android and iOS stores. This book will not teach you to program in JavaScript, but that should not concern you. If you have programmed in other programming languages, then JavaScript will not be alien to you. Some of the more specific language elements such as events and callbacks will be covered in the book. Should you need a reference, I would highly recommend you to look at some of the articles written by the godfather of JavaScript, Douglas Crockford (http://javascript.crockford.com/). Be aware that most Titanium apps can be programmed using only a small subset of the features provided by the language.

This first chapter covers the following:

  • The installation of Titanium Studio

  • The installation of Android and iOS SDKs

  • Creating your first Titanium app

  • A look into the configuration of apps

System requirements and restrictions


You can run Titanium on Mac, Windows PC, or Linux. Great; however, your choice of operating system may restrict the types of app you can develop, as not all emulators are available on all operating systems. Apple only releases the SDK for iOS on its operating system.

Tip

If you don't have a Mac but would like to release your code on iOS, then you can rent a Mac from MacinCloud (http://www.macincloud.com/). You can install Titanium Studio with the Apple SDK. It is slower than having a Mac of your own, but cheaper if you only need a short-term solution.

The following table shows what is available on which operating system:

Operating system

Android emulator

iOS emulator

Mac OS X

Yes

Yes

Windows

Yes

No

Linux

Yes

No

The Appcelerator site states that the minimum memory required to run Titanium is 2 GB. It is advisable to have at least 4 GB of memory, especially if you plan to run the Android emulator.

Tip

You do not need a Google developer account to install and use Titanium within the emulator, but if you plan to release code or run the app on a device, then you do. If you are serious about writing an app, it's a good idea to get an account. You cannot download the iOS SDK without purchasing the iOS developer program membership, so you will need it before beginning to write apps for iOS.

Installing Titanium


Assuming that you meet the preceding requirements, you are ready to install Titanium.

Time for action – installing Titanium Studio


Titanium comprises of Titanium Studio and the SDK. Titanium Studio is the development environment that is built on top of the Eclipse tool. Previous users of Eclipse should find Titanium Studio familiar. The SDK comprises of the magic of Titanium where your JavaScript source code is compiled into native code. To install Titanium perform the following steps:

  1. Navigate to the Appcelerator site http://www.appcelerator.com and create an account.

  2. Then follow the link to Download Titanium Studio, selecting the appropriate file for your operating system.

  3. Open the downloaded file to install Titanium Studio.

What just happened?

You have downloaded and installed Titanium Studio. There will be a link to Titanium Studio either on the Start menu (Windows installation) or within the Applications folder (Mac). You have made the first big step towards creating cross-platform native applications.

Setting up Titanium Studio


Now it's time to set up and configure Titanium Studio.

Time for action – setting up Titanium Studio


Open Titanium Studio to begin the process of setting up the tool and perform the following steps:

  1. Select the location for your workplace. This will be the base directory for your apps. All of your Titanium projects, and therefore apps, will be stored in directories below this.

    Tip

    The workspace location should be free of spaces and punctuation characters as it can affect the compilation and deployment of your apps.

  2. Enter your Appcelerator account details and click on Next. After a short delay you will be presented with the Titanium welcome screen.

What just happened?

Titanium Studio was opened and a base workspace directory was specified. That completes the installation and initial configuration of Titanium Studio. If you have not already downloaded and installed the platform SDKs you wish to use, you should do this next so you can run code in the simulator. Titanium handles this installation beautifully.

Installing the Android SDK


If you plan to release your app for the Android platform or to just merely evaluate how it looks in the emulator, then you need to install the Android SDK.

If you have a question mark against the Android SDKs on the welcome screen icon, then Titanium cannot find the Android SDK on your system. Click on the icon to start the installation.

Time for action – configuring the Android SDK


To configure the Android SDK, perform the following steps:

  1. Select the installation directory. Note that this does not need to be your Titanium workspace directory, as shown in the following screenshot:

  2. Wait while the Android SDKs are downloaded and installed—this will take some time, there is a lot of content to install.

  3. Configure the versions of SDKs you wish to use. Make sure that you include Android 2.2 as this is required by Titanium. You can install as many as you like and including 2.2, it just takes extra time to install. If you are not sure which Android device you are targeting, then just install the latest version and Android 2.2 for now. You can always add others later:

  4. Wait while the selected APIs are downloaded and installed. This may take some time if you have selected several SDK versions.

  5. Once the installation process completes, the SDK installer will exit and you will be returned to the Titanium dashboard where the question mark will have been cleared from the Android SDK. The Android emulator is now installed and configured for use with Titanium.

What just happened?

The Android SDK was downloaded and you had the opportunity to install specific versions of Android emulator you wish to test against. Titanium Studio took note of the installation directory and stored it in its preferences so that it can communicate with the emulator.

Installing the iOS SDK


If you have a Mac, then the chances are that the SDK that you will want the most is the iOS SDK. It's faster to load and less strict compared to the Android SDK.

Time for action – configuring the iOS SDK


To configure the Android SDK perform the following steps:

  1. If the Titanium dashboard shows a question mark against the iOS SDK, it means Titanium cannot locate a suitable iOS SDK. Click on the icon to begin the process of installation.

  2. Depending on your version of iOS the App store will be launched with the Xcode application. Install the application.

  3. Once the installation process completes, the Titanium dashboard will be updated and the question mark will be cleared from the iOS SDK. The iOS emulator is now ready for use.

What just happened?

The latest iOS SDK was downloaded and installed. Titanium Studio took note of the installation directory so that it can call the emulator and display the logs on the console.

Installation problems – did something go wrong?


This is by no means an exhaustive reference of all the problems that you might encounter. For issues beyond this section you should refer to the developer documentation at docs.appcelerator.com, the Question & Answers section of the Appcelerator website https://developer.appcelerator.com/questions/newest or Appcelerator support.

If you have a problem with the installation of any of the SDKs, you can investigate the settings by selecting Preferences from the Titanium Studio menu. From there navigate to Titanium Studio | Titanium, which will result in the following screen:

From this screen you can select the location of the Titanium SDK home and Android SDK home, and investigate the location of the iOS SDK.

Your first cross-platform app


Now that Titanium Studio and the mobile SDKs have been installed, it's time to create your first cross-platform app.

Time for action – creating an app from a template


To create an app from a template perform the following steps:

  1. From the dashboard select the Develop option:

  2. On this screen within the Template section click on the New Project button and on the Default Project option. The following screen will appear:

    An explanation of the options shown on the New Titanium Project screen is given in the following table:

    Value

    Optional/required

    Description

    Project Name

    Required

    This contains the name of the project. This will be the name that appears in the Project Navigator window, and will also be the name of the base director of the app. It will probably be the intended name of the app when you release it although it doesn't have to be. You can release the app under a different name.

    App Id

    Required

    This contains the unique identifier for the app. The convention is to use the reverse domain name such as com.domain.project. The minimum requirement is to have an app ID of xxx.x (meaning you must have a dot and something after it). Also note that the app ID does not have to relate to a real domain nor to a domain that you own, although you would be wise to choose a domain you own.

    Company URL

    Optional

    This contains the URL of the company that owns the app. This is optional and will not be shown on the app store.

    Titanium SDK Version

    Required

    This contains the version of the Titanium SDK used to build your app. This can be changed later.

    Deployment Targets

    Required

    This contains a list of checkboxes of device types that you intend to release the app on. This can be changed later. Leaving them all checked as the default setting is not an issue and will not get in your way.

    Automatically Cloud enable this application

    Required

    Do you want to connect to the cloud for this application? This should be left unchecked for this first app. We will cover the cloud enabling of apps later in this book.

    For this app the settings used are shown in the following screenshot:

  3. Click on Finish. The project will be created and you will be presented with the following screen:

  4. The screen is a summary of the contents of the tiapp.xml file. This file contains the project settings and customizations. It's a file you will become familiar with and refer to often when creating Appcelerator apps. We will take a closer look at the contents of this file later in the chapter, but first let's get straight to business and run our first cross-platform app, using the code that was just generated.

What just happened?

We created our first Titanium app. Titanium will have created the project files and directories required to support the development of the app. The main configuration files will have been configured based on the entries specified on the New Titanium Mobile Project screen.

The blank template has created an app with a small amount of code in it. Enough for us to run it to see what we have done. Everything is in place. You have a project, you have configured your emulators, what are you waiting for? Let's run the app!

Time for action – running an app in the emulator


You can run an app from either the run menu or from the navigator window, as shown in the following screenshot:

The buttons from left to right are as follows:

Button

Text

Collapse All

Collapse all items in the navigator

Link

Highlight in the navigator the current file in the main editor window

Debug

Run the app using the debugger

Run

Run the app in the emulator or on a connected device (phone or tablet connected to the computer)

Distribute

Package the app for release to an Android or iOS app store

To run the app in the emulator click on the Run button on the navigator window and select your chosen emulator from the list. If you are using a Mac, you can really exploit the power of Titanium by running the app on both Android and iOS at the same time. Otherwise, you will have to content yourself with only running the Android version of the app.

The Android emulator can take a long time to start. It certainly takes much longer than the iOS emulator. On some Android emulator devices, you need to unlock the screen display to allow the app to start.

The Android emulator will generate a lot of console messages (colored white), warnings (yellow), and the occasional error (red). This is normal; however, you may need to keep an eye on the errors to see if anything significant is going wrong.

What just happened?

If you have chosen to run the app on both Android and iOS, you will have two emulators running the Titanium application at the same time, as shown in the following screenshot:

Take a moment to congratulate yourself. By getting to this point you have installed Titanium, configured the emulators, and created your first app. You have come a long way, and have all the tools you need installed and at your disposal. All that remains in this book is to teach you how to make better apps than this.

Did the app fail to run?

Did the following message appear on the console?

"[DEBUG] Session could not be started: Error Domain=DTiPhoneSimulatorErrorDomain Code=2 "Simulator session timed out."

It is fairly common to see the timeout error message the first time a new app is run. Titanium has to go through some extra stages running the app for the first time, or the fist time the app is run after a project clean.

Try running it again.

Still didn't run? It's always worth rebuilding the project from a clean build, as this can clear many problems up. First clear down the existing build by clicking on Project | Clean… and then try re-running.

A review of the first app


For this next section, we will review what has been created on this first app. A number of files were created and you will need to be aware of some of them. These are the core files that are created for all apps, even this most basic one.

tiapp.xml


This file lives in the base directory of your project and contains your global project settings and compile-time customizations. Titanium Studio provides a clean, simple overview interface to the main settings listed in the file, as shown in the screenshot under step 3 of the Time for action – creating an app from a template section. From the overview screen you can:

  • Add new external modules to your project such as a Twitter or PayPal module extension

  • Add Appcelerator cloud services

  • Change the Titanium SDK used to compile your app

  • Enable deployment targets for supported platforms

  • Change app version, description, and publisher details

When you open the tiapp.xml file you will notice that along with the overview there is a set of tabs at the bottom of the screen, which allows you to switch between the overview and the raw XML. There are a number of things that you can only change from the raw XML view of the file, for example allowed orientations, so it's worth getting familiar with it. The table given next provides a list of most configurable items within the file. You don't need to examine and learn the options now, in fact it doesn't make for great reading; you can refer to it when you need it. We will look at the effects of some of the settings later in the book.

tiapp XML structure explained

XML

Description

<?xml version="1.0" encoding="UTF-8"?>
<ti:app xmlns:ti="http://ti.appcelerator.org">

This is the standard XML header.

<deployment-targets>
        <target device="mobileweb">false</target>
        <target device="iphone">true</target>
        <target device="ipad">false</target>
        <target device="android">true</target>
        <target device="blackberry">false</target>
    </deployment-targets>

This is the list of supported devices. This can be changed from the overview screen.

<sdk-version>3.0.0.GA</sdk-version>
    <id>com.mycompany.firstapp</id>
    <name>FirstProject</name>
    <version>1.0</version>
    <publisher>Darren</publisher>
    <url>http://</url>
    <description>not specified</description>
    <copyright>2012 by Darren</copyright>
    <icon>appicon.png</icon>

These settings can be changed from the overview screen.

<persistent-wifi>false</persistent-wifi>

Does your app require a persistent Wi-Fi connection, or is the default that turns off after a period of inactivity ok?

<prerendered-icon>false</prerendered-icon>

This controls the shine/gloss effect that is added to icons on iOS. Setting this to true will prevent the gloss being added.

<statusbar-style>default</statusbar-style>

This is the status bar style. See Titanium.UI.iPhone.StatusBar in the API documentation to see allowable values.

<statusbar-hidden>false</statusbar-hidden>

Should the status bar be hidden?

<fullscreen>false</fullscreen>

Should the app start up using the full screen?

<navbar-hidden>false</navbar-hidden>

Should the navigation bar be hidden?

<analytics>true</analytics>

Do you want to gather analytic information about the app that will be automatically uploaded to the Appcelerator site?

<guid>d047116f-4ddb-4007-a24f-8702df42e59e</guid>

This is the unique internal identifier of your app. It is used with the analytics services. Do not change this value.

<property name="ti.ui.defaultunit">system</property>

 
<iphone>
<orientations device="iphone">
<orientation>Ti.UI.PORTRAIT</orientation>
</orientations>
<orientations device="ipad">
<orientation>Ti.UI.PORTRAIT</orientation>
<orientation>Ti.UI.UPSIDE_PORTRAIT</orientation>
<orientation>Ti.UI.LANDSCAPE_LEFT</orientation>
<orientation>Ti.UI.LANDSCAPE_RIGHT</orientation>
</orientations>
</iphone>

This lists the allowed orientations for the iOS devices you support. The options shown to the left restrict any displays on an iPhone to portrait (that is with the button at the bottom of the phone). All orientations will be supported by the iPad.

    <android xmlns:android="http://schemas.android.com/apk/res/android"/>

This lists compile-time directives for the Android generator if any. This is also where any AndroidManifest overrides are listed.

<mobileweb>
        <precache/>
        <splash>
            <enabled>true</enabled>
            <inline-css-images>true</inline-css-images>
        </splash>
        <theme>default</theme>
    </mobileweb>

These are the settings and controls for the generation of a mobile web app.

<modules/>

Any external modules added to the project will be listed here. This can all be done from the overview screen.

</ti:app>

This is the closing XML line.

The good news is that for this chapter you don't have to change any of these settings.

Other files in the base directory

There are several other files that were generated when the project was created.

The other files in the project root directory are all text files that do not affect the operation of the app. They will be bundled with your app when it is released. You can update them if you feel the need.

The Resources directory

The other main element created at project inception is the Resources directory that looks as follows:

It contains one important file, app.js.

app.js

app.js is the entry point of any Titanium project—the first line of code that is executed. It can be freely edited as you wish. We will look at the contents of this file in later chapters. For now just accept the contents of the file that have been generated.

KS_nav_ui.png and KS_nav_views.png

KS_nav_ui.png and KS_nav_views.png are the two icons that appear at the bottom of the screen on the tabs. They are needed for this app but are not important elements of other apps. They can be deleted if they are not used.

The Android and iPhone directories

The android and iphone directories under the Resources folder contain the app icons and splash screens for many different iOS and Android devices supported by your app. We will look in more detail at the contents of these directories in Chapter 11, Testing and Deploying.

Pop quiz - Titanium installation and configuration

Q 1. You want to develop apps on your windows PC using Titanium. What platforms can you test on the machine?

  1. iOS

  2. Android

  3. Symbian

Q 2. You will often need to refer to the app configuration file to change settings. Where can you find it?

  1. <project base directory>/manifest

  2. <project base directory>/resources/app.json

  3. <project base directory>/tiapp.xml

  4. <project base directory>/app.js

Q 3. What is the name of the source code file that is first run when an app starts?

  1. <project base directory>/app.js

  2. <project base directory>/resources/app.js

  3. <project base directory>/init.js

  4. <project base directory>/build/start.exe

Summary


A lot has been achieved in this chapter without a single line of code being written. You have installed Titanium, downloaded and configured the Android and iOS emulator, created a simple app, and run the app in the emulator.

The rest of the book will redress the code imbalance by concentrating on the tools and commands Titanium provides to help you design and distribute beautiful apps.

Left arrow icon Right arrow icon

Key benefits

  • Covers iOS, Android, and Windows8
  • Includes Alloy, the latest in Titanium design
  • Includes examples of Cloud Services, augmented reality, and tablet design

Description

Appcelerator Titanium is the leading method for creating native cross-platform apps. This book guides you from the initial stages with the language right through to the submission of your app to the marketplace/app store. Specially crafted examples cover the most common requirements of an app programmer. This book will be your companion as you progress with the language."Appcelerator Titanium Application Development by Example Beginner's Guide" will guide you through the process of designing cross-platform apps using Titanium. It covers all areas of the language from installation through development to submission to the store. This book will take a hands-on approach in teaching you how to write cross-platform apps using Titanium, as well as exploring the new features of Titanium 3. Each chapter will show you how to overcome specific challenges using Titanium. You will learn how to design your apps using MVC principles and Alloy, use the cloud to your advantage, develop apps that work on tablets and phones, use the phone gadgets like the accelerometer, integrate social media, record usage using analytics, and monetise your app. All tasks from installation to deployment to the store are covered and backed by examples. The book will be your companion from your first steps with Titanium to successful live deployment.

Who is this book for?

If you are new to this technology or curious about the possibilities of Appcelerator Titanium then this book is for you. If you are a web developer who is looking for a way to craft cross-platform apps, then this book and the Titanium language is the choice for you.

What you will learn

  • How to design applications that work on all supported platforms
  • How to create layouts that work on all platforms and on both handheld and tablet devices
  • How to design applications using Alloy
  • The integration of social media
  • Use the phone gadgets such as the accelerometer, compass, and camera
  • How to integrate cloud services such as ACS, Parse, and Stackmob
  • How to test your code and deploy to the app store/marketplace
Estimated delivery fee Deliver to Portugal

Premium delivery 7 - 10 business days

€17.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Apr 25, 2013
Length: 334 pages
Edition : 1st
Language : English
ISBN-13 : 9781849695008
Vendor :
Apache
Category :
Languages :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Estimated delivery fee Deliver to Portugal

Premium delivery 7 - 10 business days

€17.95
(Includes tracking information)

Product Details

Publication date : Apr 25, 2013
Length: 334 pages
Edition : 1st
Language : English
ISBN-13 : 9781849695008
Vendor :
Apache
Category :
Languages :

Packt Subscriptions

See our plans and pricing
Modal Close icon
€18.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
€189.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts
€264.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total 78.98
Appcelerator Titanium Application Development by Example Beginner's Guide
€41.99
Creating Mobile Apps with Appcelerator Titanium
€36.99
Total 78.98 Stars icon

Table of Contents

13 Chapters
How to Get Up and Running with Titanium Chevron down icon Chevron up icon
How to Make an Interface Chevron down icon Chevron up icon
How to Design Titanium Apps Chevron down icon Chevron up icon
Gluing Your App Together with Events, Variables, and Callbacks Chevron down icon Chevron up icon
It's All About Data Chevron down icon Chevron up icon
Cloud-enabling Your Apps Chevron down icon Chevron up icon
Putting the Phone Gadgets to Good Use Chevron down icon Chevron up icon
Creating Beautiful Interfaces Chevron down icon Chevron up icon
Spread the Word with Social Media Chevron down icon Chevron up icon
Sending Notifications Chevron down icon Chevron up icon
Testing and Deploying Chevron down icon Chevron up icon
Analytics Chevron down icon Chevron up icon
Making Money from Your App Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Half star icon Empty star icon 3.8
(6 Ratings)
5 star 33.3%
4 star 33.3%
3 star 16.7%
2 star 16.7%
1 star 0%
Filter icon Filter
Top Reviews

Filter reviews by




Scott A Schlangen Jun 30, 2014
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Great starting book, helped me out. Good working examples, and an amazing price this book was great thank you very much
Amazon Verified review Amazon
F.Brefere Oct 28, 2016
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Very helpful
Amazon Verified review Amazon
Christopher M Golding May 27, 2013
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
Used this book to get started with the concepts of building apps using Titanium. I found it to be a good resource, with the exception of a few chapters where the author skips a few steps or does not explain how something is done.
Amazon Verified review Amazon
Vince A Bullinger Nov 29, 2013
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
Seems like the best Titanium book out there so far. Which is a bit sad. It's a good book, taking you from beginner through to most of the advanced concepts and examples. It's definitely a great reference book for how to tackle a problem. A "Hello, world!" for every problem, which is definitely how it's advertised. I don't like how they say that the Alloy framework is in this book because... it's discussed for six pages. You easily need at least a chapter on Alloy. Not a brief touching and then never mention it again. I understand this is what, the third edition, and it was probably started before Alloy existed, but it's too important. The next edition should have updates to some examples with the inclusion of Alloy and Alloy should have its own chapter.I'd prefer a true best practices book replete with Alloy examples. This does not exist. The Titanium book that you will find that has "best practices" in the title is awful and not recommended. Considering writing my own, but... I don't know the best practices yet.
Amazon Verified review Amazon
Daniel E. Hannon Oct 01, 2014
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
It's a good book but at the time of this review I wouldn't recommend it until the MVC Alloy examples have been updated. Currently it is using some deprecated UI elements which renders the example obsolete. Alloy is the new recommended way of developing Titanium Apps and this book has some catching up to do.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela