Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

4

Share

Appcelerator Titanium - An Introduction to the Titanium Ecosystem

Presentation given at JS.Everywhere() 2012 in Paris, France.

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Appcelerator Titanium - An Introduction to the Titanium Ecosystem

  1. 1. *Appcelerator Titanium MobileBoydlee Pollentine [@boydleep]
  2. 2. WHO AM I? Author of the “Appcelerator Titanium Cookbook”, Active Titan Community Memberwho runs a Digital Agency in the UK focusing on Mobile Solutions. @boydleep boydlee.com e boydlee@gmail.com 1
  3. 3. 90m Recently, the number of devices that have at some point installed and used an app built with Titanium reached over 90 million.ALLOWS YOU TO WRITE NATIVE APPS FORANDROID, iOS & BLACKBERRY USING JAVASCRIPTApps written in Titanium are native apps – they do not sit in a web container, they arenot based on jQuery, HTML, CSS etc. They are native apps – your JS code is“interpreted” to Java/Objective-C at compile time. However, if you want to make hybridapplications in Titanium there is nothing stopping you from doing so! 2
  4. 4. SO…WHY GO NATIVE WITH TITANIUM? NOT LIMITED TO REDUCE TIME SPENT SUPPORT THE ONE SPECIFIC PLATFORMS LEARNING MULTIPLE CODEBASE LANGUAGES CODE FOR MAJOR REDUCE DUPLICATED PLATFORMS EASIER KNOWLEDGE EFFORT (iOS, Android, Mobile TRANSFER Web) 3
  5. 5. TODAY Q1 2013What platforms are supported?Already supported are iOS (including all versions of iPhones, iPads and iPod Touchdevices), Android Phones and Tablets (from SDK 2.2+) and the mobile web.From Quarter 1 next year, Titanium will also include support for BB10 and Windows 8 /RT. 4
  6. 6. HOW IT WORKS…YOUR APPLICATION (JAVASCRIPT)UI* API *OS API MODULESJAVASCRIPT BRIDGE to JAVA/OBJ-C NATIVE CODE ON iOS/ANDROID 5
  7. 7. DEVELOP MUCH FASTER THAN OBJECTIVE-C / JAVA ALONE1 Build your apps in the technologies and languages you already know - JavaScript2 End-to-end process using Titanium Studio3 Maintain a single codebase: Code once, adapt everywhere4 Still doesn‟t do what you need? Build native modules that are exposed to Titanium‟s JavaScript API. 6
  8. 8. ACCESS ALL MAJOR DEVICE AND PLATFORM APIS• MAPS • YQL• GEO-LOCATION • FACEBOOK• FILE SYSTEM • ANALYTICS STORAGE • CLOUD SERVICES• SQLITE DATABASES • PLATFORM• APPCELEROMETER SPECIFIC APIS &• NETWORKING HARDWARE• MEDIA & CAMERA • MORE… 7
  9. 9. CONSISTENT APISJUST SOME OF THE NUMEROUS UI COMPONENTS Titanium.UI.createView(); Titanium.UI.createWindow(); Titanium.UI.createImageView(); Titanium.UI.createButton({ width: 100, height: 30, title: “Click Me!” });“Titanium” & “Ti” NAMESPACES ARE INTERCHANGABLE Ti.Media.createAudioPlayer(); Titanium.Media.showCamera(); Ti.App.fireEvent(„myEvent‟); Titanium.App.addEventListener(„myEvent‟, myFunctionHandler); 8
  10. 10. IMPLEMENTING CALLBACKSHOW TO CAPTURE A PHOTO WITH THE CAMERA Titanium.Media.showCamera({ success: function(event) { //we captured a photo! Ti.UI.createImageView({ image: event.media //the photo image/blob object }); }, cancel: function(event) {}, error: function(error) { alert(„There was an error capturing your photo‟); }, allowImageEditing: true, saveToPhotoGallery: true }): 9
  11. 11. FULL COMMONJS SUPPORTCREATE ONCE (module.js) myModule = function(); myModule.prototype.sayHello = function(name){ Titanium.UI.createAlertDialog({ title: “Hello”, message: “Hello ” + name + “!” }).show(); }; exports.myModule = myModule;RE-USE EVERYWHERE var Module = require(„module‟); var dialog = new Module.myModule(); dialog.sayHello(„Boydlee‟); //alerts Hello Boydlee! 10
  12. 12. FREE TITANIUM STUDIO IDE FORCODING, TESTING & PACKAGING APPSBased on the Eclipse platform, IDE was originally developed by Aptana 11
  13. 13. DON’T LIKE ECLIPSE?Then use any other IDE you like – you‟re not tied to it. You can code Titanium apps in TextMate, Eclipse, Notepad, Visual Studio… anything you like!Just use the Command Line Interface (CLI) tools to perform your building, testing and packaging. Even the CLI is now written in JavaScript using Node.JS! 12
  14. 14. NOT JUST A PLATFORM, BUT AN ENTIRE ECOSYSTEMANALYTICS THE CLOUD MODULES COMMUNITYNodeable.com Appcelerator Extend the default Large, activeApp Analytics Cloud services are framework with community withIntegrate any built in. native modules. Q&A forums.number of external Use any number of Marketplace for Paid support isparties 3rd party Cloud downloading and available should(Flurry, Google services without managing you want it.etc) restriction. modules. 13
  15. 15. BUILT-IN ANALYTICS Titanium’s built-in Analytics allow you to track your user and application sessions free for up to 30 days.You’re not locked in though! Use any number of other analytics modules including Flurry, Google and Nodeable. Ti * Analytics YourApp Flurry Nodeable Google 14
  16. 16. ACSAppcelerator Cloud Services Automatic Cloud Integration via Titanium Studio Rich media API’s allow you to store * files, videos and images Integrate user emailing and push notifications from ACS Built on the backbone of Amazon EC2/S3 and MongoDB 15
  17. 17. 16
  18. 18. 318modules and countingwith one being added tothe marketplace everysecond day.Appcelerator Modules Marketplace is the biggestmobile module store of its kind on the web todayModules are priced according to the developer who produced them – some are a one-off cost, some per seat (per developer) or based on monthly subscriptions. The good bit- many of the modules are free! The marketplace contains modules for everything fromdrawing, OpenGL, Barcode scanning and more. 17
  19. 19. AN ACTIVE COMMUNITY Titanium has an active community made up of a number ofhighly skilled experts and users who are more than happy to help answer any questions you might have. 1 Via the Q&A at http://www.appcelerator.com 2 Via numerous Meetup.com groups and Conferences 3 Via a number of Blogs and GitHub pages 4 Via Twitter, FB, LinkedIn and other social networks 5 Official support and channels are available if you need them 18
  20. 20. WHAT DOES THE FUTURE HOLD?End-to-end JavaScript using Node.JS – both on the server and locally in the CLI Game Development using the Platino game engineAlloy – a new way of defining your layouts using XML files not so dissimilar from XAMLGreat community tools such as TiShadow, whichallow you to simultaneously launch your Titanium apps across Android and iOS devices at the
  21. 21. ONE LAST THING…. If you‟re interested in learning more aboutTitanium and discussing mobile with some of Europe‟s best developers, be sure to attendtiConf EU in Valencia, Spain (22-24 February 2013) http://ticonf.eu
  • lucasacchi

    Feb. 7, 2015
  • TerryLaundos

    Sep. 28, 2014
  • rahil320

    Dec. 26, 2013
  • davidcyp

    May. 10, 2013

Presentation given at JS.Everywhere() 2012 in Paris, France.

Views

Total views

3,393

On Slideshare

0

From embeds

0

Number of embeds

63

Actions

Downloads

0

Shares

0

Comments

0

Likes

4

×